EventLoop_Stop 函数
标头: #include <applibs/eventloop.h>
停止 EventLoop 运行,并使 EventLoop_Run 将控制权返回到其调用方。
int EventLoop_Stop(EventLoop *el);
参数
-
el
指向EventLoop
对象的指针。
返回值
如果成功,则返回 0,如果失败,则返回 -1,在这种情况下 errno
,将 设置为错误值。
言论
可以从事件回调或其他线程调用此函数,以停止当前循环并从 返回 EventLoop_Run
。
如果从回调调用, EventLoop_Run 将同步停止。 EventLoop_Stop返回后,EventLoop_Run不会再处理其他事件。 然后,EventLoop_Run 将停止处理事件并返回到其调用方。
如果从另一个线程调用, EventLoop_Run
将异步停止并返回到其调用方。 因此, EventLoop_Run
在返回后 EventLoop_Stop
仍可能处理一些事件。
对象 EventLoop
是单线程对象。 尝试同时从多个线程使用 EventLoop
将导致未定义的行为。 唯一的例外是调用 “EventLoop_Stop。