线程q

import queue

'''
在同一个进程下的多个线程本来就能数据共享,为什么还要有队列

因为队列是管道加锁  使用队列你就不需要自己手动解决操作锁的问题

因为锁操作的不好 就会造成死锁现象
'''

# 普通队列
# q = queue.Queue()
# q.put('hello')
# print(q.get())


# 先进后出队列 就是堆栈
# q = queue.LifoQueue()
# q.put(1)
# q.put(2)
# q.put(3)
# print(q.get())
# print(q.get())
# print(q.get())


# 优先级队列
q = queue.PriorityQueue()
# 数字越小优先级越高
q.put((10, 'qqq'))  # 在put括号内需要放入元组(优先级和放入的数据)
q.put((0, 'www'))
q.put((100, 'eee'))
q.put((-10, 'rrr'))
print(q.get())
print(q.get())
print(q.get())
print(q.get())

 

posted @ 2019-08-14 17:19  Nmdlao  阅读(150)  评论(0编辑  收藏  举报