问题:简要记录python队列自带的阻塞特性说明
特性简要说明:从队列中获取数据。如果队列中没有数据时,队列会处于阻塞状态,当队列中有数据后,会第一时间返回给数据获取端
特性描述方案:使用案例来说明队列具备的阻塞特性
特性使用推荐:在进行调度等任务的管理中,可以使用这种方式来进行任务调度管理
案例:
import queue
import threading
import time
ques = queue.Queue()
def task_queue():
while True:
print(ques.get())
def put_task_in_queue():
num = 0
while True:
time.sleep(5)
num += 1
ques.put(num)
t1 = threading.Thread(target=task_queue)
t2 = threading.Thread(target=put_task_in_queue)
t1.start()
t2.start()
结果简要说明:上述逻辑代码,在运行后会发现,当ques队列中没有数据的时间,我们使用ques.get()方法会处于阻塞状态。当ques中有数据后,ques.get()会立即运行。