python主动结束线程源码要怎么写,python源码,import sysim
python主动结束线程源码要怎么写,python源码,import sysim
import sysimport signalimport timeimport threadingdef signalHandler(sig,id): sys.exit()signal.signal(signal.SIGINT, signalHandler)signal.signal(signal.SIGQUIT, signalHandler)signal.signal(signal.SIGTERM, signalHandler)signal.signal(signal.SIGHUP, signalHandler)class Test(threading.Thread): def run(self): while True: print 'xxxxxxxxxxx' time.sleep(1)def main(): t = Test() t.start() if __name__ == '__main__': main()
全局变量怎么用呢? 我加上全局变量不起作用,应该怎么写呢?
import sysimport signalimport timeimport threadingNEEDEXIT = Falsedef signalHandler(sig,id): global NEEDEXIT NEEDEXIT = True sys.exit()signal.signal(signal.SIGINT, signalHandler)signal.signal(signal.SIGQUIT, signalHandler)signal.signal(signal.SIGTERM, signalHandler)signal.signal(signal.SIGHUP, signalHandler)class Test(threading.Thread): def run(self): global NEEDEXIT while not NEEDEXIT: print 'xxxxxxxxxxx' time.sleep(1)def main(): t = Test() t.start() if __name__ == '__main__': main()
我所知道的python是没有像ruby一类的thread kill的,所以一般都采用一个全局变量,然后在thread内部去check这个全局变量,如果全局变量changed了,那么就退出这个thread,所以意味着你可以在外部去修改这个全局变量。
我暂时没有找到更好的方式,有的话请告诉我。
编橙之家文章,
相关内容
- Python能否控制android系统手机硬件,pythonandroid,android手机
- Python高手帮我优化一段源码,python高手源码,list = [a,
- 请问Python擅长做图像识别工作吗?哪个模块支持图片识
- Python什么方法可以获取计算机cpu及内存等信息,python
- 使用网络python脚本无法读取本地文件内容原因是什么,
- 需要Tornado在response中返回图片求解决方法,,小弟初学
- Python pyqt开发界面程序在国内应用数量大吗,pythonpyqt
- Python [Errno 2] No such file or directory问题解答,pythonerrno,
- Flask获取GET查询参数的python源码如何写,flaskpython,flas
- 请问apscheduler避免出现任务miss要怎么做,apschedulermiss
评论关闭