コード例 #1
0
ファイル: appnet_server.c プロジェクト: lchb369/appnet
int startServer( appnetServer *serv )
{
	int sockfd[2];
	int sock_count = 0;
	
	set_daemon( serv );
	// memory alloc
	initServer( serv );
	
	listenToPort( serv->listen_ip , serv->port , sockfd , &sock_count );
	
	serv->listenfd = sockfd[0];
	
	createWorkerProcess( serv );
	
	createReactorThreads( serv );
	
	__SLEEP_WAIT__;
	
	runMainReactor( serv );
	
	destroyServer( serv );
	
	__SLEEP_WAIT__;
	return 0;
}
コード例 #2
0
ファイル: aeserver.c プロジェクト: shitfSign/appnet_php7
int startServer( aeServer* serv )
{	
    int sockfd[2];
    int sock_count = 0;          
    
    //监听TCP端口,这个接口其实可以同时监听多个端口的。
    listenToPort( serv->listen_ip, serv->port , sockfd , &sock_count );
    serv->listenfd = sockfd[0];

    //创建进程要先于线程,否则,会连线程一起fork了,好像会这样。。。
    createWorkerProcess( serv );	
    
    //创建子线程,每个线程都监听所有worker管道
    createReactorThreads( serv );
    
	__SLEEP_WAIT__;
	
    //运行主reactor
    runMainReactor( serv );
    
    //退出
    destroyServer( serv );
    return 0;
}