1

パイプでフォークされた子プロセスと親プロセスの間で通信しようとしています。かなり最新のバージョンの python (以下のコード) で動作させることができました。これを Jython 2.1 で動作させるのに苦労しています (更新するオプションがありません)。

ここで誰かが私を正しい方向に向けることができますか?

#!/usr/bin/env python
import os
import time
import sys

print "starting"

r, w = os.pipe()
prcID = os.fork()

if prcID:
   # PARENT PROCESS
   # Set up write pipe
   os.close(r)
   w = os.fdopen(w,'w')

   for i in range(5):
      time.sleep(1)
      print "- " + str(i) + " -"
   print "Parent is about to write"
   w.write("OMG!!!! IT WORKS!!!!!")
   print "Parent is done writing"
   w.close()

   os.waitpid(prcID, 0)
   print "Parent done Waiting!"

else:
   # CHILD PROCESS
   os.close(w)
   r = os.fdopen(r)
   strout = r.read()
   print "Child read: " + strout
   print "Child done"
   sys.exit(0)

#END of PARENT

print "done"
4

0 に答える 0