当前位置 博文首页 > python函数超时自动退出的实操方法

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

    作者:十一 时间:2021-02-17 09:08

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

    安装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()
    js