パイプから行を読み込んで処理しようとしていますが、私は愚かなことをしています。プロデューサーは、このように、無期限のラインを生産保つために起こっている:Python - パイプからの単純な読み込みの行
producer.py
import time
while True:
print 'Data'
time.sleep(1)
は、消費者だけで定期的にラインをチェックする必要があります。
consumer.py
import sys, time
while True:
line = sys.stdin.readline()
if line:
print 'Got data:', line
else:
time.sleep(1)
私はpython producer.py | python consumer.py
としてWindowsシェルでこれを実行すると、永遠にスリープ状態になります(決してデータを取得しないようですか?)おそらく問題は、私は有限の量のデータを送るとうまく動作するので、決して終了しません。
データを受信して消費者に表示するにはどうすればよいですか?実際のアプリケーションでは、プロデューサは制御できないC++プログラムです。
質問の最後の文章を読んだことがありますか? – jwg