|
楼主 |
发表于 2007-12-31 22:33:57
|
显示全部楼层
我在主线程main中ACE_Proactor::instance()->run_proactor_event_loop();
在handle_read_stream() 中将mb 放到一个task的消息队列中,
在task自己的线程中不断从消息队列中取mb并处理,
那么我怎么才能结束主线程呢?
我又不想将ACE_Proactor的完成事件循环放到另外一个线程中,那样的话,主线程就不起作用了, 会降低效率的
主线程main函数
Accepte _Acceptor(&handler); //异步接收器, handler是一个ACE_Task主动对象
handler.activate();//
_Acceptor.open(ACE_INET_Addr(Port), 0,1,5,1 ,ACE_Proactor::instance(), 1, 1);
ACE_Proactor::instance()->proactor_run_event_loop(); |
|