本章给大家在项目使用时候,常见的一种情况解决案例,即是当我们调用多个线程,使用了同一个函数去处理数据的时候,有些用函数已经处理完成,但是有些还没有,这就需要我们将任务进行分割,然后当一小部分任务执行后,退出来,另外没有执行的完成超时的就继续去执行,下面就针对遇到这些问题的小伙伴,给大家提供解决参考。
安装timeout-decorator库:
1
|
pip3 install timeout - decorator
|
编写异常语句:
1
|
@timeout_decorator .timeout( 5 , timeout_exception = StopIteration)
|
函数限制超时:
1
|
@timeout_decorator .timeout( 5 , use_signals = False )
|
解决案例:
1
2
3
4
5
6
7
8
9
10
11
|
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()
|
到此这篇关于python函数超时自动退出的实操方法的文章就介绍到这了,更多相关python函数超时怎么自动退出内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!
原文链接:https://www.py.cn/jishu/jichu/22286.html