Tôi có một quá trình đọc từ một tệp (sử dụng file.read()
) và một quá trình đang ghi vào cùng một tệp (file.write()
). Vấn đề là nó không hoạt động - tôi không nhận được lỗi nhưng chúng không thể hoạt động cùng một lúc. Tôi đã thử thực hiện thao tác đọc và ghi không chặn và sau đó xả luồng, như sau:Hai quy trình đọc/ghi vào cùng một tệp Python
fcntl.fcntl(file, fcntl.F_SETFL, os.O_NONBLOCK)
file.write(msg)
file.flush()
Tôi hoàn toàn hiểu nhầm không? Làm thế nào một người nên hoàn thành việc viết và đọc một tập tin từ các quy trình khác nhau?
Vâng, điều này cũng tốt cho tôi, cảm ơn. – Andreas
Lưu ý rằng os.O_NONBLOCK không khả dụng trong Windows. – yoyo