12 并发编程-(线程)-线程queue&进程池与线程池

Posted foremostxl

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了12 并发编程-(线程)-线程queue&进程池与线程池相关的知识,希望对你有一定的参考价值。

queue 英 /kju?/  美 /kju/ 队列

1、class queue.Queue(maxsize=0) #队列:先进先出

import queue

q=queue.Queue()
q.put(first)
q.put(second)
q.put(third)

print(q.get())
print(q.get())
print(q.get())

‘‘‘
结果(先进先出):
first
second
third
‘‘‘

2、class queue.LifoQueue(maxsize=0) #堆栈:last in fisrt out

import queue

q=queue.LifoQueue()
q.put(first)
q.put(second)
q.put(third)

print(q.get())
print(q.get())
print(q.get())
‘‘‘
结果(后进先出):
third
second
first
‘‘‘

3、class queue.PriorityQueue(maxsize=0) #优先级队列:存储数据时可设置优先级的队列

import queue

q=queue.PriorityQueue()
#put进入一个元组,元组的第一个元素是优先级(通常是数字,也可以是非数字之间的比较),数字越小优先级越高
q.put((20,a))
q.put((10,b))
q.put((30,c))

print(q.get())
print(q.get())
print(q.get())

‘‘‘
结果(数字越小优先级越高,优先级高的优先出队):
(10, ‘b‘)
(20, ‘a‘)
(30, ‘c‘)
‘‘‘

二、进程池与线程池

 

以上是关于12 并发编程-(线程)-线程queue&进程池与线程池的主要内容,如果未能解决你的问题,请参考以下文章

python并发编程&多线程

并发编程8 线程的创建&验证线程之间数据共享&守护线程&线程进程效率对比&锁(死锁/递归锁)

9 并发编程-(线程)-守护线程&互斥锁

JUC并发编程 线程运行原理 -- 多线程 & 上下文切换

JUC并发编程 -- 常见的线程安全类 & 线程安全类方法的组合 & 不可变类线程安全性

Java Review - 并发编程_ThreadPoolExecutor原理&源码剖析