1. 程式人生 > >swoole不能在協程中使用 sleep() 否則會阻塞,swoole自己的sleep()睡眠函式

swoole不能在協程中使用 sleep() 否則會阻塞,swoole自己的sleep()睡眠函式

使用swoole協程開發時, 不要在協程中使用php的sleep()函式, 否則協程會阻塞。

sleep函式

你可以使用 Swoole/Coroutine::sleep() 代替sleep()

<?PHP
echo 'start';
echo "\n";
$name = 'qinziheng';
go(function() use($name) {
        //sleep(1);     // 整個程式會阻塞在這裡
        Swoole\Coroutine::sleep(0.211); // 協程阻塞,但是協程外的程式碼繼續執行
        echo $name, ' go 1';
        echo "\n";
});

echo 'todo';
echo "\n";

猛擊這裡, 觀看子恆老師《騰訊雲簡訊驗證碼開發》系列視訊 瞭解實現過程和下載相關原始碼