学习笔记(21):Python网络编程并发编程-队列的使用
生活随笔
收集整理的這篇文章主要介紹了
学习笔记(21):Python网络编程并发编程-队列的使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
立即學習:https://edu.csdn.net/course/play/24458/296433?utm_source=blogtoedu
隊列和管道
?
1.存在的意義:
?????? 1)在前面的筆記中,使用join和互斥鎖來保證了硬盤數據共享的數據安全性,但是降低了代碼的運行效率;
?????? 2)而隊列和管道的操作空間是內存,內存操作運行速度會更快,因此使用隊列既可以保證數據共享的安全,也可以保證代碼的運行效率;且互斥鎖得考慮鎖什么時候添加什么時候釋放,比較難以掌握這個時間節點,但是隊列就不用考慮這個問題;
?????? 3)隊列是先進先出,管道是先進后出,隊列和管道其實是相當于自帶鎖的。
?
2.Queue模塊
1)put函數:往隊列中添加元素
2)get函數:從隊列中取得元素
3)full函數:確定隊列是否元素已經滿
4)empty函數:確定隊列是否還有元素
?
3.代碼
????? 隊列和管道里面不適宜存儲較大的文件,一般只是使用在隊列中存儲一些信息
from multiprocessing import Queue # from queue import Queue#和上面的模塊的代碼是一樣的q = Queue(3)#定義一個隊列,只能存放三個元素q.put([2,2,2,2]) q.put(3) q.put('中國') print(q.full())print('*'*50)print(q.get()) print(q.get()) print(q.get()) print(q.empty())運行結果:
True
**************************************************
[2, 2, 2, 2]
3
中國
True
總結
以上是生活随笔為你收集整理的学习笔记(21):Python网络编程并发编程-队列的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 学习笔记(20):Python网络编程并
- 下一篇: python数据结构_大O符号_学习笔记