我尽力在stackoverflow和google上搜索此问题,但到目前为止还没有发现。 python程序不断遇到Can't start new thread
问题。如果我通过threading.enumerate()
注销活动(活动)线程,我只会看到少数(少于10个)线程。即使只有少量的活动线程,python是否有可能遇到can't start new thread
?
一些猜测:
我没有为新创建的主题命名。因此线程名称从thread-1增加到thread-VERY-BIG-NUMBER。 VERY-BIG-NUMBER
是否有可能超出系统限制?
我使用名为stopit(https://pypi.python.org/pypi/stopit)的python库来超时一些长时间的操作(REST请求)。如果超时,该库将在执行线程中引发异常。但是,当python抛出Can't start new thread
时,我只看到< 10个活动线程。是否有可能某些遗留线程未终止并正在运行但未显示为活动线程?
任何帮助表示赞赏!
跟进并修改
操作系统:Ubuntu 14.04
最小样本:这是一个非常大的系统,无法在此处发布整个系统代码。因为我不知道这个问题的原因,所以我还没有能够提出一个简短且可重复的样本程序。