调用event_base_dispatch( )
函数时内部会发生什么?是否有任何创建的线程一直运行,直到收到一些要停止的信号?
答案 0 :(得分:2)
event_base_dispatch()
是一个阻塞调用,它在调用该函数的线程中的循环内执行定义的回调。它会继续运行,直到没有注册的活动或您致电event_base_loopexit()
/ event_base_loopbreak()
见http://www.wangafu.net/~nickm/libevent-book/Ref3_eventloop.html
相当于event_base_loop(event_base, 0)
。在快速查看源代码后,我没有看到任何其他线程创建:
https://github.com/libevent/libevent/blob/master/event.c#L1847