在使用 gevent 时,每当子 greenlet 抛出异常时,我希望它冒泡到父级(理想情况下让父级抛出异常)。在 greenlet 的文档中,它说这是自动完成的,但在 gevent 中似乎并非如此。
如何在 gevent 中冒泡异常?
谢谢!
link()
到父 greenlet,那么当子进程退出时,LinkedExited
将在父进程中引发。此时,您可以检查子 greenlet 的 exception
属性。它将包含子级中引发的异常实例(如果子级完成时出现错误)。既然你有了例外,你可以立即在父级中处理它,或者你可以在父级中引发它。