看看下面代码python线程不会退出,越来越多,
python 3的代码,queue是小写的,哈哈
from queue import Queue
import time
import threading
class Test():
def __init__(self):
self.q = Queue()
self.THREAD_NUM = 5
def impl(self, obj):
print(obj)
time.sleep(1)
def working(self):
while True:
obj = self.q.get()
self.impl(obj)
self.q.task_done()
def addTask(self, pending):
start = time.time()
for i in range(self.THREAD_NUM):
t = threading.Thread(target=self.working)
t.setDaemon(True)
t.start()
for obj in pending:
self.q.put(obj)
self.q.join()
print ('Elapsed Time=%d, Active Thread=%d' %(int(time.time() - start), threading.activeCount()))
if __name__ == "__main__":
for i in range(0, 50, 3):
pending = []
pending.append(i)
pending.append(i+1)
pending.append(i+2)
Test().addTask(pending)
i+=1
from queue import Queue
import time
import threading
class Test():
def __init__(self):
self.q = Queue()
self.THREAD_NUM = 5
def impl(self, obj):
print(obj)
time.sleep(1)
def working(self):
while True:
obj = self.q.get()
self.impl(obj)
self.q.task_done()
def addTask(self, pending):
start = time.time()
for i in range(self.THREAD_NUM):
t = threading.Thread(target=self.working)
t.setDaemon(True)
t.start()
for obj in pending:
self.q.put(obj)
self.q.join()
print ('Elapsed Time=%d, Active Thread=%d' %(int(time.time() - start), threading.activeCount()))
if __name__ == "__main__":
for i in range(0, 50, 3):
pending = []
pending.append(i)
pending.append(i+1)
pending.append(i+2)
Test().addTask(pending)
i+=1
...全文
相关推荐
python子线程退出及线程退出控制的代码
下面通过代码给大家介绍python子线程退出问题,具体内容如下所示: def thread_func(): while True: #do something #do something #do something t=threading.Thread(target = thread_func) t.start() # main thread do something # main thread do something # main thread do something 跑起来是没有问题的,但是使用ctrl + c中断的时候出问题了,主线程退出了,
python 线程的暂停, 恢复, 退出详解及实例
主要介绍了python 线程的暂停, 恢复, 退出详解及实例的相关资料,需要的朋友可以参考下
Python多线程:主线程等待所有子线程结束代码
主要介绍了Python多线程:主线程等待所有子线程结束代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
python多线程调用exit无法退出的解决方法
今天小编就为大家分享一篇python多线程调用exit无法退出的解决方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
python selenium chrome 多开 多线程
phantomjs.exe,chromedriver.exe文件改个名字 填上绝对路径 就可以打开多个浏览器对象 .包含 phantomjs.exe,chromedriver.exe 和示例


