import threading
import queue
import time
# 创建队列
queue = queue.Queue()
# 生产者线程
def producer():
for i in range(10):
print('生产者生产数据: ', i)
queue.put(i) # 将数据放入队列中
time.sleep(1) # 模拟生产数据的耗时
# 消费者线程
def consumer():
while True:
data = queue.get() # 从队列中取出数据
print('消费者消费数据: ', data)
time.sleep(2) # 模拟处理数据的耗时
# 创建并启动生产者线程
producer_thread = threading.Thread(target=producer)
producer_thread.start()
# 创建并启动消费者线程
consumer_thread = threading.Thread(target=consumer)
consumer_thread.start()
这个模型中,生产者线程和消费者线程会同时运行。生产者线程会生成数据并将其放入队列中,而消费者线程则会从队列中取出数据并处理它。在这个例子中,我们使用了Python的queue
模块来实现队列,并且使用threading
模块来创建和管理线程。