-1

待ち行列に入れたい

lambda : Popen(.....)

後で電話/待機するため。次に、一時停止したポペンスにさらにいくつかをキューに追加し、それらを再び消費します。

メインのキューモジュールは同期を重視しているため、APIが場所によっては少し奇妙に感じられます。私は同期を気にしません(シングルスレッドプログラム、Popenは彼らの仕事をし、エラー時に例外をスローします、そしてそれらは重要な方法で環境に影響を与えません(それらはファイルを生成します)

後で追加するジェネレーターを使用する必要があります。もしそうなら、ジェネレータにアイテムを追加する良い方法は何ですか、

gena = itertools.chain(gena,[item))

毎回無駄に思えます。

4

3 に答える 3

3

はい、deque(collections.deque)を使用できます。これは、どちらの端でも効率的にプッシュおよびポップできるリストです。リストを使用することもできますが、おそらく問題ではないため、非効率性について心配する必要はありません。

于 2011-12-03T13:21:36.797 に答える
3

collections.dequeを使用できます:

from collections import deque

queue = deque()
queue.append(new) # append
current = queue.popleft() # first item
于 2011-12-03T13:24:17.620 に答える
2

マルチスレッドについては気にしないので、論理的な選択はcollections.dequeのように見えます。

于 2011-12-03T13:22:43.957 に答える