怎样在python中捕获线程抛出的异常

发布网友

我来回答

1个回答

热心网友

python的线程中的异常,通常不会给你显示出错的语句。你可以将thread函数,或者是Thread的run里的内容用整个儿的try catch包裹起来。搜索

然后这样
import traceback,sys
try:
threadfun1()
except:
traceback.print_exc(file=sys.stdout)

这样出错的时候就能定位到是哪一行代码了。

因为线程经常出现这种无显示错误位置的情形。后来都形成了习惯,要不把线程放在try catch里。要不就仔细检查线程函数,确保它没有错误,再放出去运行。

另外你还可以将线程函数的功能放在主进程里,单线程运行。这样错误位置就曝露出来了。

仅仅从你这个提示来看是无法定位错误的位置与类型的。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com