Rumah  >  Artikel  >  rangka kerja php  >  swoole错误处理的方法

swoole错误处理的方法

尚
asal
2019-12-17 09:24:022839semak imbas

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视频教程

Atas ialah kandungan terperinci swoole错误处理的方法. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel sebelumnya:swoole错误查看的方法Artikel seterusnya:swoole自定义错误的方法