7.5 標準モジュール Queue

 

Queue モジュールは、複数のプロデューサ(供給者)、複数のコンシューマ (消費者)で使用可能な FIFO キューを実装しています。これはマルチスレッド プログラミングにおいて、複数のスレッド間での情報のやり取りを行う時に、特に 役立ちます。このモジュールのクラス Queue は、必要となる全てのロックの 仕組みを実装しています。ただし、これは Python においてどれだけスレッドが サポートされているかに依存します。

Queue モジュールには、以下のクラスと例外が定義されています。

Queue (maxsize)
このクラスのコンストラクタです。maxsize は、キューに溜めておくことの できるアイテム数の上限を設定する整数です。このサイズになると、キューアイテムが 消費されるまでは、キューに対するアイテムの挿入はブロックされます。 maxsize がゼロ以下の場合は、キューサイズは無限大となります。

Empty
空、または(ロックを取得できないために)空であるかどうかが分からない Queue オブジェクトに対する、ノンブロックのキューの取り出し(例えば、 get_nowait())が要求された時には、例外があげられます。



guido@python.org