首頁 >php框架 >Swoole >swoole錯誤處理的方法

swoole錯誤處理的方法

尚
原創
2019-12-17 09:24:022936瀏覽

swoole錯誤處理的方法

在協程程式設計中可直接使用try/catch處理例外狀況。但必須在協程內捕獲,不得跨協程捕獲異常。

不只是應用層throw的Exception,底層的一些錯誤也是可以被捕獲的,如function、class、method不存在

錯誤

################## ####在下面的程式碼中,try/catch和throw在不同的協程中,協程內無法捕捉到此例外。當協程退出時,發現有未捕獲的異常,將引起致命錯誤。 ###
Fatal error: Uncaught RuntimeException
try {
    Swoole\Coroutine::create(function () {
        throw new \RuntimeException(__FILE__, __LINE__);
    });
}
catch (\Throwable $e) {
    echo $e;
}
######正確#########在協程內捕獲異常。 ###
function test() {
    throw new \RuntimeException(__FILE__, __LINE__);
}

Swoole\Coroutine::create(function () {
    try {
        test();
    }
    catch (\Throwable $e) {
        echo $e;
    }
});
###推薦學習: ###swoole影片教學######

以上是swoole錯誤處理的方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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