函式名:EvWatcher::start()
適用版本:PHP 5 >= 5.4.0, PECL ev >= 0.2.0
函式說明:此方法用於啟動事件迴圈監視器。
用法:
EvWatcher::start() : bool
引數:無
返回值:如果啟動成功則返回 true,否則返回 false。
示例:
$loop = new EvLoop();
$watcher = new EvWatcher(function($watcher, $revents) {
echo "Watcher callback executed\n";
$watcher->stop();
$watcher->getLoop()->stop();
});
// 將監視器新增到事件迴圈
$watcher->start();
// 啟動事件迴圈
$loop->run();
echo "Event loop stopped\n";
在上面的示例中,首先我們建立了一個 EvLoop
物件來例項化事件迴圈。然後,我們建立了一個 EvWatcher
物件,並傳遞一個回撥函式作為建構函式的引數,回撥函式將在事件觸發時執行。在回撥函式中,我們輸出一條訊息,然後停止監視器和事件迴圈。監視器透過呼叫 start()
方法來啟動。最後,我們透過呼叫 run()
方法來啟動事件迴圈,使監視器開始監聽事件。當事件迴圈停止後,我們輸出一條訊息到控制檯。