使用Swoole實現毫秒級定時任務

2022-03-20 10:31:34 字數 716 閱讀 4586

指定時間後執行

$timer = \swoole\timer::after(毫秒數,function());
清除指定定時器 

\swoole\timer::clear($timer);
附上示例**

$timer1 = \swoole\timer::tick(5000,function()use(&$timer1)else

$log = fopen('test.log','a');

fwrite($log,"現在時間是:".date('y-m-d h:i:s',time())."\n");

fclose($log);

});

想要在方法內清除定時任務必須用&號。

附上執行命令

nohup php /root/test.php &
這裡必須加上& 表示指在後台執行

執行之後會出現乙個程序號,可以用kill -9 [程序號]結束當前程序,當然也可以用ps命令來查程序號

ps -aux| grep test.php
以上方法只能以cli模式執行

注意,必須安裝了swoole拓展才能使用這個方法。此操作也只能在cli模式使用,否則會報錯^^  看報錯資訊也能看出來

Swoole 毫秒和秒級定時器封裝

引入官網的話 使 php 開發人員可以編寫高效能的非同步併發 tcp udp unix socket http,websocket 服務。swoole 可以廣泛應用於網際網路 移動通訊 企業軟體 雲計算 網路遊戲 物聯網 iot 車聯網 智慧型家居等領域。使用 php swoole 作為網路通訊框架...

swoole學習之毫秒定時器

常規定時器 首先想到的就是linux自帶的crontab 不過這個定時器是分鐘級別的.swoole定時器 swoole timer after after time,callback 設定乙個延時器 swoole timer clear timer id 清除指定的定時器 server on ope...

c實現毫秒 微秒級定時器

秒級定時器,都知道可以用sleep實現,但如果要實現毫秒級呢?usleep?使用select實現 select函式原型 int select int nfds,fd set readfds,fd set writefds,fd set exceptfds,struct timeval timeout...