实际上,我会将来自 application1 的输入提供给 input.txt,实习生会触发 {used pyinotify} program1 来运行更新 output.txt 文件的 program1,但从 output.txt 读取的 application1 不会等待 program1 完成文本文件(output.txt)的写入过程,它从 output.txt 中读取旧数据。我需要 Application1 等待 program1 的进程完成我该怎么做?
import pyinotify,subprocess
def onChange(ev):
cmd = ['/usr/bin/env', 'python','/var/www/cgi-bin/version2_1.py', ev.pathname]
subprocess.Popen(cmd).communicate()
wm = pyinotify.WatchManager()
wm.add_watch('/var/www/cgi-bin/input.txt', pyinotify.IN_CLOSE_WRITE, onChange)
notifier = pyinotify.Notifier(wm)
notifier.loop()
这是我用来在触发输入文本时在后台运行我的 python 程序 1 的程序,在此触发后应用程序 1 执行此语句 out_file=open("/var/www/cgi-bin/output.txt", "r").read()
现在 application1 在 program1 更新之前获取输出内容!我希望 Aplication1 等待 program1 完成对 output.txt 的运行和更新
请给我一个想法,我该怎么做..
谢谢 :)