Tập lệnh python đang kiểm soát ứng dụng bên ngoài trên Linux, truyền đầu vào thông qua một đường ống tới stdin ứng dụng bên ngoài và đầu ra đọc qua đường ống từ ứng dụng bên ngoài.Ép buộc đầu ra tiêu chuẩn của một chương trình khác được unbuffered bằng cách sử dụng Python
Vấn đề là ghi vào đường ống được đệm theo khối, và không theo hàng, và do đó sự chậm trễ xảy ra trước khi tập lệnh kiểm soát nhận dữ liệu đầu ra bằng, ví dụ, printf trong ứng dụng bên ngoài.
Không thể thay đổi ứng dụng bên ngoài để thêm các lệnh gọi fflush (0) rõ ràng.
Làm cách nào để mô-đun pty của thư viện chuẩn python được sử dụng với mô-đun subprocess để đạt được điều này?
Cảm ơn, nhưng vấn đề là tính chất đệm của stdin/stdout của quá trình được kiểm soát, không phải của tập lệnh python. – grrussel