当前位置: 首页>>代码示例>>C++>>正文


C++ Daemon::cleanup方法代码示例

本文整理汇总了C++中Daemon::cleanup方法的典型用法代码示例。如果您正苦于以下问题:C++ Daemon::cleanup方法的具体用法?C++ Daemon::cleanup怎么用?C++ Daemon::cleanup使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Daemon的用法示例。


在下文中一共展示了Daemon::cleanup方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。

示例1: entry

void* Daemon::entry(void* data){
	struct sync* td = (struct sync*)data;
	Daemon* daemon = td->daemon;

	/* setup self-pipe */
	if ( pipe2(daemon->pipe, O_NONBLOCK) != 0 ){
		int saved = errno;
		Log::fatal("main", "pipe2() returned %d: %s\n", saved, strerror(saved));
		td->value = saved;
		sem_post(&td->semaphore);
		return NULL;
	}

	td->value = daemon->init();
	sem_post(&td->semaphore);

	if ( td->value != 0 ){
		return NULL;
	}

	if ( td->barrier ){
		pthread_barrier_wait(td->barrier);
	}

	daemon->run();
	daemon->cleanup();

	/* close pipe */
	close(daemon->pipe[0]);
	close(daemon->pipe[1]);

	/* free resources */
	sem_destroy(&td->semaphore);
	free(td);

	return 0;
}
开发者ID:DPMI,项目名称:marcd,代码行数:37,代码来源:daemon.cpp


注:本文中的Daemon::cleanup方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。