EventLoop_Run函數
頁首: #include < applibs/eventloop.h>
執行 EventLoop, 並在來電者的執行對話中分派擱置中的事件。
EventLoop_Run_Result EventLoop_Run(EventLoop *el, int duration_in_milliseconds,
bool process_one_event);
參數
el
要執行的 EventLoop。duration_in_milliseconds
執行活動迴圈的時間長度。 如果零,迴圈會在一個事件準備就緒且立即中斷時處理一個事件,無論參數的值為何process_one_event
。 如果大於零,除非該迴圈受到中斷,否則迴圈會在指定的持續期間執行。 如果小於零,迴圈會持續執行,直到中斷為止。 如需其他條件,請參閱 EventLoop_Stop 函數和process_one_event
參數。process_one_event
指出是否要在第一個事件處理完成後中斷迴圈。 如果為 false,迴圈會在參數指定duration_in_milliseconds
的持續時間持續執行,或是直到 EventLoop_Stop中斷為止。 如果duration_in_milliseconds
是零,則會忽略此參數。
傳回值
傳回 EventLoop_Run_Result 值,表示此函數呼叫的結果。
言論
應用程式可以撥打電話 EventLoop_Run(el, -1, false)
,將通話執行緒的控制權傳遞至 EventLoop
。
如果應用程式呼叫 EventLoop_Run(el, -1, true)
,迴圈會封鎖並等待第一個活動準備就緒,然後它會處理事件並返回。
應用程式可以呼叫 EventLoop_Stop 稍早結束 EventLoop_Run
。