サブプロセスとの通信をテストしています。サーバーを起動して、定期的にデータを送信する必要があります。最終的なターゲットは、気象データを取得するプロセスとプロット サーバーです。サンプリングレートはオーダーまたは分です.... Pythonでipcの基本を理解するためにこれら2つのコードフラグメントを書きましたが、それらを機能させることさえできません。シンクロニズムは問題ではありません。
メインプロセス
import sys, time
from subprocess import Popen, PIPE
print 'starting'
proc = Popen (['python.exe',
'C:\Documents and Settings\Administrator\Desktop\sub.py'],
stdin = PIPE, stdout = PIPE)
print 'launched'
w = 0
while True:
w += 1
time.sleep (2)
print 'writing', w
proc.stdin.write (repr(w))
proc.stdin.flush()
print proc.stdout.read()
サブプロセス:
import sys, time
print 'reading'
v = 0
while True:
v = sys.stdin.read()
sys.stdout.write('ACK')
sys.stdout.flush ()
time.sleep (4)
メイン プロセスがブロックされており、明らかにサブプロセスが ACK の読み取りと送信を行っていません。どこが間違っていますか??? ありがとう