目录
前言
python内置的queue模块再作为消息队列使用时,是一个非常好用的模块。
它好用最主要的原因就是:他是线程安全的,所以支持多线程消费。那么,它为什么是线程安全的呢?这篇文章中我只能跟你说,因为queue是基于锁机制实现的。具体的实现原理,请看我另外一篇文章:《python基础:queue实现的底层原理》
针对queue中的put、get、put_nowait、get_nowait这种方法,本文就不详细介绍了,网上有很详细的资料。
本文只对不太常见的LifoQueue与queue_prioriry的使用做一个介绍。
一、LifoQueue
它其实和常用的Queue所有使用方法完全一致。
只是Queue实现的是FIFO(first-in-first-out)先进先出数据结构,而LifoQueue实现的是LIFO(last-in-first-out)先进后出数据结构。
请看下面的比较代码,一目