Queue モジュールは、複数のプロデューサ(供給者)、複数のコンシューマ
(消費者)で使用可能な FIFO キューを実装しています。これはマルチスレッド
プログラミングにおいて、複数のスレッド間での情報のやり取りを行う時に、特に
役立ちます。このモジュールのクラス Queue は、必要となる全てのロックの
仕組みを実装しています。ただし、これは Python においてどれだけスレッドが
サポートされているかに依存します。
Queue モジュールには、以下のクラスと例外が定義されています。
- Queue (maxsize)
-
このクラスのコンストラクタです。maxsize は、キューに溜めておくことの
できるアイテム数の上限を設定する整数です。このサイズになると、キューアイテムが
消費されるまでは、キューに対するアイテムの挿入はブロックされます。
maxsize がゼロ以下の場合は、キューサイズは無限大となります。
- Empty
-
空、または(ロックを取得できないために)空であるかどうかが分からない
Queue オブジェクトに対する、ノンブロックのキューの取り出し(例えば、
get_nowait())が要求された時には、例外があげられます。
guido@python.org