共用方式為


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」。