首頁 >php框架 >Swoole >swoole事件如何用

swoole事件如何用

(*-*)浩
(*-*)浩原創
2019-12-06 10:31:402174瀏覽

swoole事件如何用

Swoole\Server是事件驅動模式,所有的業務邏輯程式碼必須寫在事件回呼函數中。當特定的網路事件發生後,底層會主動回調指定的PHP函數。 共支持13種事件。 (推薦學習: swoole影片教學

事件執行順序

所有事件回呼均在$server->start後發生

伺服器關閉程式終止時最後一次事件是onShutdown

伺服器啟動成功後,onStart/onManagerStart/onWorkerStart會在不同的進程內並發執行

onReceive/onConnect/onClose在Worker進程中觸發

Worker/Task進程啟動/結束時會分別呼叫一次onWorkerStart/onWorkerStop

onTask事件僅在task進程中發生

onFinish事件僅在worker進程中發生

onStart/onManagerStart/onWorkerStart 3個事件的執行順序是不確定的

##協程模式

################################################# #Swoole2/4版本支援了協程,使用協程後事件回呼函數將會並發地執行。協程是一種用戶態線程實現,沒有額外的調度消耗,僅佔用記憶體。 ######使用協程模式,可以理解為「每次事件回呼函數都會建立一個新的執行緒去執行,事件回呼函數執行完成後,執行緒退出」。 #########如果希望關閉協程,可設定:######
$server->set(["enable_coroutine" => false, ]);

以上是swoole事件如何用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn