国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python實現(xiàn)線程池代碼分享

2019-11-25 17:16:27
字體:
供稿:網(wǎng)友

原理:建立一個任務(wù)隊列,然多個線程都從這個任務(wù)隊列中取出任務(wù)然后執(zhí)行,當(dāng)然任務(wù)隊列要加鎖,詳細(xì)請看代碼

import threadingimport timeimport signalimport os class task_info(object):  def __init__(self):    self.func = None    self.parm0 = None    self.parm1 = None    self.parm2 = None   class task_list(object):  def __init__(self):    self.tl = []    self.mutex = threading.Lock()    self.sem = threading.Semaphore(0)     def append(self, ti):    self.mutex.acquire()    self.tl.append(ti)    self.mutex.release()    self.sem.release()     def fetch(self):    self.sem.acquire()    self.mutex.acquire()    ti = self.tl.pop(0)        self.mutex.release()    return ti   class thrd(threading.Thread):  def __init__(self, tl):    threading.Thread.__init__(self)    self.tl = tl     def run(self):    while True:      tsk = self.tl.fetch()      tsk.func(tsk.parm0, tsk.parm1, tsk.parm2)   class thrd_pool(object):  def __init__(self, thd_count, tl):    self.thds = []         for i in range(thd_count):      self.thds.append(thrd(tl))     def run(self):    for thd in self.thds:      thd.start()              def func(parm0=None, parm1=None, parm2=None):  print 'count:%s, thrd_name:%s'%(str(parm0), threading.currentThread().getName())   def cleanup(signo, stkframe):  print ('Oops! Got signal %s', signo)      os._exit(0)   if __name__ == '__main__':     signal.signal(signal.SIGINT, cleanup)  signal.signal(signal.SIGQUIT, cleanup)  signal.signal(signal.SIGTERM, cleanup)     tl = task_list()  tp = thrd_pool(6, tl)  tp.run()     count = 0  while True:         ti = task_info()    ti.parm0 = count    ti.func = func    tl.append(ti)    count += 1         time.sleep(2)  pass

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 客服| 区。| 本溪市| 天长市| 温州市| 庆元县| 伽师县| 佛冈县| 湛江市| 文化| 丰镇市| 榆社县| 枝江市| 剑川县| 简阳市| 从化市| 深圳市| 锡林郭勒盟| 博乐市| 临泽县| 师宗县| 营山县| 临邑县| 阿城市| 左贡县| 玛纳斯县| 桂东县| 米易县| 阜新| 敦化市| 灵丘县| 汝南县| 和静县| 阿拉尔市| 鹤庆县| 长宁县| 阜平县| 湘潭县| 奉节县| 清远市| 清远市|