如何结束ace中的reactor事件循环

时间:2012-01-04 15:12:52

标签: ace reactor

我找到了两种方法来结束ace中的reactor事件循环:

1. ACE_Reactor::instance()->end_reactor_event_loop();
2. ACE_Reactor::instance()->close()

他们之间有什么区别?我应该使用哪个?

1 个答案:

答案 0 :(得分:3)

取决于你想做什么:

查看this documentation

基本上两者之间的区别是:

end_reactor_event_loop停止由反应堆处理消息,但不释放资源,也不丢弃队列中已有的消息。

另一方面,

close将在上面执行并释放与ACE_Reactor::intance()的实现相关联的所有资源,从而删除消息,删除与反应器相关联的所有套接字和处理程序等。

因此,根据您正在做的事情,您可以选择除了提供更多详细信息之外的其中一个。