pyhton中雙端佇列
阿新 • • 發佈:2018-12-03
# -*- coding: utf-8 -*- """ Created on Tue May 29 16:33:10 2018 @author: Administrator """ # queue # deque import collections #import threading import multiprocessing import time candle = collections.deque("candle") def burn(direction, nextSource): print("burning") while True: try: next = nextSource() time.sleep(0.1) except IndexError: break else: print('%s : %s\n'%(direction, next)) print("Done %s \n"%direction) # 建立兩個執行緒,分別從兩端去雙向佇列中取值 #觀察有沒有異常情況 #left = threading.Thread(target=burn, # args=('left', candle.popleft)) #right = threading.Thread(target=burn, # args=('right', candle.pop)) left = multiprocessing.Process(target=burn, args=('left', candle.popleft)) right = multiprocessing.Process(target=burn, args=('right', candle.pop)) left.start() right.start() left.join() right.join()
pyton中雙端佇列的優勢