pythonキューキュー

Queue

#1 周囲##

Python3.7.3

#2 開始##

from queue import Queue,LifoQueue,PriorityQueue

#2.1 キュータイプ###

q =Queue(maxsize=0)
q =LifoQueue(maxsize=0)
q =PriorityQueue(maxsize=0)

# 詳細は後で

maxsize:maxsizeは、キューに格納できるデータ数の上限を指定する整数です。上限に達すると、挿入により、キュー内のデータが消費されるまでブロックが発生します。 maxsizeが0以下の場合、キューサイズに制限はありません。


#2.2 オペレーティング###

put(item, block=True, timeout=None)

# item:登録データ(どのデータタイプでも問題ありません)
# block:ブールタイプ,デフォルトTrue
# timeout:残業時間,デフォルトなし
# 1. ブロックがデフォルト値の場合,キューがすでにある場合"フルチーム"状態,また、キューにデータを挿入し続けます,このとき、timeoutの値は、プログラムが例外をスローする時間です。(timeout=なしの場合,プログラムは常にあります"閉塞"状態,データがない限り"チームを離れる")
# 2. ブロックするとき=Falseの場合,タイムアウトが何であっても,キューに入れるだけ"閉塞"すぐに例外をスローする
get(block=True, timeout=None)

# block:ブールタイプ,デフォルトTrue
# timeout:残業時間,デフォルトなし
# 1. ブロックがデフォルト値の場合(True),キューがすでにある場合"空気"状態,続行する必要があります"チームを離れる",このとき、timeoutの値は、プログラムが例外をスローする時間です。(timeout=なしの場合,プログラムは常にあります"空気转"状態(無限ループ),データがない限り"チームに参加する")
# 2. ブロックするとき=Falseの場合,タイムアウトが何であっても,キューに入れるだけ"アイドリング"すぐに例外をスローする
q.qsize()
# キューが空の場合は、Trueを返します,それ以外の場合はFalse
q.empty()
# キューがいっぱいの場合は、Trueを返します,それ以外の場合はFalse
q.full()
q.queue.clear()

#2.3 PriorityQueue(PriorityQueue)###

from queue import PriorityQueue
q =PriorityQueue()classJob(object):
 def __init__(self, priority, description):
  self.priority = priority
  self.description = description
  print('チームに参加する:', description)return

 def __lt__(self, other):return self.priority < other.priority
        
# 数値が小さいほど、優先度が高くなります。
q.put(Job(1,"aaa"))
q.put(Job(2,"bbb"))
q.put(Job(8,"ccc"))
q.put(Job(3,"ddd"))print(q.get().description)print(q.get().description)print(q.get().description)print(q.get().description)


Recommended Posts

pythonキューキュー
Pythonレッスン32-キュー
Pythonマルチスレッド
Python CookBook
Python FAQ
Python3辞書
Python3モジュール
python(you-get)
Python文字列
Python記述子
Pythonの基本2
Pythonノート
Python3タプル
CentOS + Python3.6 +
Python Advanced(1)
Pythonデコレータ
Python IO
Pythonマルチスレッド
Pythonツールチェーン
Python3リスト
Pythonマルチタスク-日常
Pythonの概要
pythonの紹介
Pythonアナリティック
Pythonの基本
07.Python3関数
Pythonの基本3
Pythonマルチタスクスレッド
Python関数
python sys.stdout
python演算子
Pythonエントリ-3
Centos 7.5 python3.6
Python文字列
Pythonの基本4
Pythonの基本5
Centos6はPython2.7.13をインストールします
Pythonは質問に答えます
Pythonの基本構文(1)
Pythonはloopメソッドを終了します
Ubuntu16アップグレードPython3
Centos7はPython3.6をインストールします。
ubuntu18.04インストールpython2
Pythonの古典的なアルゴリズム
ubuntuを再学習します--python3
Python2.7 [インストールチュートリアル]
Python文字列操作
Python 3.9が登場!
Python研究ノート(1)
python学習ルート
CentOS7アップグレードpython3
Pythonレビュー1
linux + ubuntuはpythonを解決します
pythonの関数
Python学習変数タイプ
CentOSはPython3.6をインストールします
Python3.9の7つの機能
ubuntu12.04インストールpython3
Python-centos6のインストール
Centos7はPython2.7をインストールします
01.Pythonの概要