python函数超时自动退出的实操方法

(编辑:jimmy 日期: 2024/12/29 浏览:2)

本章给大家在项目使用时候,常见的一种情况解决案例,即是当我们调用多个线程,使用了同一个函数去处理数据的时候,有些用函数已经处理完成,但是有些还没有,这就需要我们将任务进行分割,然后当一小部分任务执行后,退出来,另外没有执行的完成超时的就继续去执行,下面就针对遇到这些问题的小伙伴,给大家提供解决参考。

安装timeout-decorator库:

pip3 install timeout-decorator

编写异常语句:

@timeout_decorator.timeout(5, timeout_exception=StopIteration)

函数限制超时:

@timeout_decorator.timeout(5, use_signals=False)

解决案例:

import timeout_decorator
@timeout_decorator.timeout(5)
def mytest():
 print("Start")
 for i in range(1, 10):
  time.sleep(1)
  print("{} seconds have passed".format(i))
def main():
 mytest()
if __name__ == '__main__':
main()

一句话新闻

Windows上运行安卓你用过了吗
在去年的5月23日,借助Intel Bridge Technology以及Intel Celadon两项技术的驱动,Intel为PC用户带来了Android On Windows(AOW)平台,并携手国内软件公司腾讯共同推出了腾讯应用宝电脑版,将Windows与安卓两大生态进行了融合,PC的使用体验随即被带入到了一个全新的阶段。