函式:EvLoop::idle()
適用版本:Ev 2.0.0+
用法: EvLoop::idle() 函式用於新增一個空閒(Idle)觸發器到事件迴圈中,以便在事件迴圈空閒時執行回撥函式。
ev_idle_cb 中註冊的回撥函式將在事件迴圈沒有任何其他活動事件時執行。這對於執行一些低優先順序任務非常有用。
示例:
$loop = new EvLoop();
$idle = new EvIdle(function() {
echo "Idle task executed\n";
});
$idle->start();
$loop->run();
在上面的例子中,您首先建立一個新的事件迴圈物件 $loop
。然後我們建立一個空閒觸發器 $idle
,並將回撥函式傳遞給建構函式。該回撥函式簡單地輸出一條訊息 "Idle task executed"。最後,我們透過呼叫 $idle->start()
啟動空閒觸發器,然後用 $loop->run()
執行事件迴圈。
請注意,以上示例是一個簡單的演示。在實際使用中,您可以在回撥函式中執行更復雜的任務。記得始終在回撥函式結束時呼叫 $idle->stop()
停止空閒觸發器,以防止無限執行回撥函式。