自定义简单版本python线程池
生活随笔
收集整理的這篇文章主要介紹了
自定义简单版本python线程池
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
python未提供線程池模塊,在python3上用threading和queue模塊自定義簡單線程池,代碼如下:
1 #用threading queue 做線程池 2 import queue 3 import threading 4 class ThreadPool(): 5 def __init__(self,arg):#創建隊列,在隊列每個位置放一個threading.Tread類 6 self.queue_obj = queue.Queue(arg) 7 for i in range(arg): 8 self.queue_obj.put(threading.Thread) 9 def thread_get(self):#執行這個方法后把得到的類threading.Tread返回 10 return self.queue_obj.get() 11 def thread_add(self):#把threading.Tread類放到隊列 12 self.queue_obj.put(threading.Thread) 13 def func(b,a): 14 b.thread_add() #用函數執行ThreadPool類里的thread_add方法 15 print(a) 16 17 threading_pool = ThreadPool(5) #創建隊列為5的線程池,每個位置放一個threading.Thread 18 thread = threading_pool.thread_get() #threading.Thread 19 thread_obj = thread(target=func,args=(threading_pool,11,)) #創建線程,把threading_pool和11傳給func函數,達到用線程處理數據并且把threading.Thread類放到隊列 20 thread_obj.start()#執行線程 自定義簡單線程池?
轉載于:https://www.cnblogs.com/wenxianfeng/p/9985856.html
總結
以上是生活随笔為你收集整理的自定义简单版本python线程池的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 临床研究和医疗保健行业实现数据湖架构的机
- 下一篇: 关于Java中next() nextLi