我正在編寫一個將使用子進程的Python腳本。主要想法是有一個運行專用子腳本的父腳本,例如,運行其他程序或自己做一些東西。父腳本和子流程之間有管道。我用它們通過定期發送一些字符並檢查響應來控制子進程是否仍在響應。問題是,當子進程在屏幕上打印任何東西(即寫入stdout或stderr)時,管道被破壞,一切都崩潰。所以我的主要問題是是否可以在子進程中阻止寫入std *,因此只有寫入管道的合法響應纔有可能?我已經嘗試Stop a function from writing to stdout但沒有任何成功。阻止寫入標準輸出
還歡迎其他想法父母和子過程之間的溝通(除基於文件的管道)。但是,必須使用子進程。
它們是Python腳本,完全發生在你寫的東西上。但是,仍然感謝你的想法和時間。 – user1192062
@ user1192062:你爲什麼不把子進程的stdout和stderr連接到管道上? –