首頁 > 後端開發 > Python教學 > 為什麼我的 Python 子程序在讀取 C 程式輸出時掛起?

為什麼我的 Python 子程序在讀取 C 程式輸出時掛起?

Susan Sarandon
發布: 2024-11-17 19:20:02
原創
944 人瀏覽過

Why Does My Python Subprocess Hang When Reading C Program Output?

Python C 程式子進程掛在「」for line in iter」處

您正在嘗試使用以下方式讀取C 程式的輸出subprocess.Popen 在Python 中,但進程掛在「for line in iter(process.stdout.readline, '')」行。這是子程序的一個已知問題,是由stdout 流的緩衝引起的。

直接在C 程序中修復stdout 緩衝區

stdout 流由以下方式緩衝預設。函數將stdout 流設定為行緩衝。一種選擇是使用偽- TTY(終端設備)與C程式進行通訊。流被緩衝。修改C 程式的原始程式碼。

以上是為什麼我的 Python 子程序在讀取 C 程式輸出時掛起?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板