day33-1 线程队列
线程队列
线程队列就是一个普通的容器,使用import queue
,用法与进程Queue一样
先进先出
from queue import Queueq = Queue()
q.put(2)
q.put('a')
q.put((2, 1))print(q.get()) # 2
print(q.get()) # 'a'
print(q.get()) # (2, 1)
后进先出:用于模拟栈这种容器
from queue import LifoQueueq = LifoQueue()
q.put(2)
q.put('a')
q.put((2, 1))print(q.get()) # (2, 1)
print(q.get()) # 'a'
print(q.get()) # 2
存储数据时可设置优先级
from queue import PriorityQueueq = PriorityQueue()
q.put(2)
q.put(3)
q.put(1)# 取出数据时会比较大小,越小的优先级越高
print(q.get()) # 1
print(q.get()) # 2
print(q.get()) # 3
--------------------------------------------------------------------------------# 自定义设置优先级
from queue import PriorityQueueclass Person:def __init__(self, name, age):self.name = nameself.age = age# 覆盖比较运算符,当两个对象之间使用比较运算符时,会自动执行该方法def __lt__(self, other):# 当两对象年龄相等时,比较名字,否则年龄小的先出if self.age == other.age:return self.name < other.namereturn self.age < other.agep1 = Person('nick', 18)
p2 = Person('tank', 17)
p3 = Person('jerry', 17)
q = PriorityQueue()
q.put(p1)
q.put(p2)
q.put(p3)
print(q.get().name) # jerry
print(q.get().name) # tank
print(q.get().name) # nick
转载于:https://www.cnblogs.com/863652104kai/p/11151622.html
day33-1 线程队列相关推荐
- Python 线程----线程方法,线程事件,线程队列,线程池,GIL锁,协程,Greenlet
主要内容: 线程的一些其他方法 线程事件 线程队列 线程池 GIL锁 协程 Greenlet Gevent 一. 线程(threading)的一些其他方法 from threading import ...
- 异步同步、阻塞非阻塞、异步回调、线程队列和协程
今天学习了异步同步.阻塞非阻塞.异步回调.线程队列和协程 一.异步同步和阻塞非阻塞 线程的三种状态: 1.就绪 2.运行 3.阻塞 阻塞:遇到了IO操作 代码卡住 无法执行下一行 CPU会切换到 ...
- 线程队列 线程池 协程
1 . 线程队列 from multiprocessing Queue , JoinableQueue #进程IPC队列 from queue import Queue #线程队列 先进先出 f ...
- python多线程队列和池_Python3 从零单排28_线程队列进程池线程池
1.线程队列 线程队列有三种:先进先出,后进先出,按优先级进出,具体如下: 1 importqueue2 3 #先进先出 4 q = queue.Queue(3)5 6 q.put(1)7 q.put ...
- 线程队列,线程池和协程
线程的其他方法: threading.current_thread() #当前线程对象 getName() # 获取线程名 ident # 获取线程id threading.enumerate ...
- python多线程为什么要用队列_Python程序中的线程操作-线程队列
一.线程队列 queue队列:使用import queue,用法与进程Queue一样 queue is especially useful in threaded programming when i ...
- Tensorflow线程队列与IO操作
目录 Tensorflow线程队列与IO操作 1 线程和队列 1.1 前言 1.2 队列 1.3 队列管理器 1.4 线程协调器 2 文件读取 2.1 流程 2.2 文件读取API: 3 图像读取 3 ...
- python锁机制_python基础(锁机制,守护线程,线程队列,线程池)
一. 互斥锁(Lock)与递归锁(RLock)机制 1.1 由互斥锁(Lock)产生的死锁现象: #互斥锁(死锁现象): #死锁现象: from threading importLock lock=L ...
- Python 线程队列 LifoQueue – LIFO - Python零基础入门教程
目录 一.Python 线程队列 Queue 分类 二.Python 线程先进后出队列 LifoQueue 简介 三.Python 线程先进后出队列 LifoQueue 函数介绍 四.Python 线 ...
最新文章
- linux date时间戳互相转换
- AtomicInteger原子性
- 贵州师范学院数学与计算机科学,贵州师范学院数学与计算机科学学院
- 英特尔Nehalem微架构三级缓存原理学习
- pythonturtle库使用心得_记录我的Python学习之旅(一)关于turtle库的基本用法
- mysql 分表索引_mysql中,分表查询和索引查询哪个更快?
- java divide 用法_java中BigDecimal加减乘除基本用法
- 自反馈与 Mandelbrot set
- 软件实施工程师到底是干什么的?全方位介绍实施工程师的职责要求和发展前景
- 单片机c51语言考试试题,51单片机基础知识试题题库(考试用含答案)
- php制作600行表格,表格排版的基本操作
- 笔记本外接显示器教程级后续使用技巧
- PHP面向对象开发:类成员的相关知识
- CSS 用图片实现圆角方框(一张图片吆)
- 【建模算法】基于遗传算法求解TSP问题(matlab求解)
- 如何理解GPU中的SIMT(单指令流多线程模型)
- 基于java的银行信用卡业务系统
- 数据结构判断题30道含答案
- 涨薪神作,阿里内部火爆的实战文档和搭建项目笔记,你还怕没有项目可做吗
- Java 通过EasyExcel导出的Excel文档的字体,背景色,自动列宽等符合要求