前言:
当前姐妹们对“python超时时间”大约比较注意,咱们都需要了解一些“python超时时间”的相关文章。那么小编在网络上收集了一些对于“python超时时间””的相关内容,希望大家能喜欢,各位老铁们快快来了解一下吧!在python编程过程中,我们经常需要处理程序超时的问题,比如一个通道超时无反应。我们在本节中就看看如何处理程序超时。
python的超时处理有几种方案,比如signal,比如threading,其中signal 一般用于linux,而对于跨平台的一般采用threading.Timer 方案,下面我们就介绍一下如何利用threading去做timer
1,threading.Timer 简介
a,构造一个timer
timer = threading.Timer(timeout_seconds,callback_func,args=(arg1,))
其中timeout_seconds是计时器的时间,单位为s
callback_func 是你设置的回调函数
arg1 为你传递的回调函数的参数,其中的逗号是必须的,因为此处只有一个参数
b,start 和cancel
start 开始计时
cancel 结束计时
2.代码
#!/usr/bin/pythonimport threadingclass test_timer: def __init__(self,arg1): self.timer_ = threading.Timer(1,self.processTimeout,args=(arg1,)) def startTimer(self): self.timer_.start() def cancelTimer(self): self.timer_.cancel() def processTimeout(self,arg1): print arg1test_timer1 = test_timer("test")test_timer1.startTimer()
标签: #python超时时间