天天看點

PHP Deprecated: Swoole\Event::rshutdown(): Event::wait() in shutdown function is deprecated in Unkn

PHP Deprecated:  Swoole\Event::rshutdown(): Event::wait() in shutdown function is deprecated in Unknown on line 0

Deprecated: Swoole\Event::rshutdown(): Event::wait() in shutdown function is deprecated in Unknown on line 0
      

swoole :

swoole版本 PHP版本
本地環境 4.4.6 7.3.31
測試線 4.7.0-dev 7.3.25

檢視swoole 版本号:

php --ri swoole      

編譯成功後使用​

​--ri​

​檢視資訊,就可以看到​

​curl-native​

$ php --ri swoole | grep curl
curl-native => enabled      

Swoole ​

​v4.6.0​

​ 版本釋出了,同樣也是 2021 年的首個版本更新。

作為一個 y 版本釋出,此次更新也包含了不相容的修改以及許多的新功能,下面就來看一看都有哪些改動?

向下不相容改動

  • 從 ​

    ​v4.6.0​

    ​ 版本開始将不再支援 ​

    ​PHP7.1​

PHP 官方對于 ​

​PHP7.1​

​ 的支援也早已在 2019 年底結束。

  • 将 ​

    ​Event::rshutdown()​

    ​ 标記為已棄用(測試線的高版本棄用​

    ​rshutdown​

    ​ ),請改用 ​

    ​Coroutine\run​

在之前的版本中,如果在​

​index.php​

​中直接使用​

​go​

​建立協程

go(function () {
    var_dump(Co\System::gethostbyname('www.baidu.com'));
});
      

這樣是正常的,但是在此版本中,就會收到廢棄警告

PHP Deprecated:  Swoole\Event::rshutdown(): Event::wait() in shutdown function is deprecated in Unknown on line 0
      

推薦使用​

​Coroutine\run​

​來代替這種方式:

Swoole\Coroutine\run(function () {
    var_dump(Co\System::gethostbyname('www.baidu.com'));
});

Swoole\Coroutine\run(function () {
    go(function () {
        var_dump(Co\System::gethostbyname('www.baidu.com'));
    });
    go(function () {
        var_dump(Co\System::gethostbyname('www.zhihu.com'));
    });
});