【发布时间】:2012-07-12 16:16:14
【问题描述】:
我有一个看起来像这样的 Python 脚本:
for x in range(1000,40000):
try:
some_function(x)
some_other_function(x)
except Exception, e:
print e
pass
我知道这不是处理此类错误的好习惯,但这是一个我只会使用一次的脚本。无论如何,我注意到循环有时会卡在一个特定的 id (x) 上并冻结几个小时。
所以我的问题是:我将如何在循环中实现超时功能,以便如果需要超过 20 秒然后跳到下一个?
【问题讨论】:
-
线程它,我认为这是实现超时的最佳方式。
-
@mgilson - Windows 7。我查看了该线程,但不确定如何实现它。这是我的第一个 Python 脚本,所以我是业余爱好者(我是 C++ 程序员)
-
@DopeMonk 你是对的。这是一个不同的问题。另一个问题想退出程序,你只想退出循环。
-
我建议找出函数卡住的原因并在尽可能低的级别解决该问题,而不是用超时来解决问题。