在协程编程中可直接运用try/catch处置惩罚非常。但必须在协程内捕捉,不得跨协程捕捉非常。
不仅是应用层throw的Exception,底层的一些毛病也是能够被捕捉的,如function、class、method不存在
毛病 (引荐进修: swoole视频教程)
下面的代码中,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怎样处置惩罚毛病的细致内容,更多请关注ki4网别的相干文章!
收藏 | 0