tôi tạo ra một FIFO, và định kỳ mở nó trong read-only và không blockingly chế độ từ a.py:Làm thế nào để đọc được đặt tên FIFO không bị chặn?
os.mkfifo(cs_cmd_fifo_file, 0777)
io = os.open(fifo, os.O_RDONLY | os.O_NONBLOCK)
buffer = os.read(io, BUFFER_SIZE)
Từ b.py, mở fifo để viết:
out = open(fifo, 'w')
out.write('sth')
Sau đó, a.py sẽ nêu ra một lỗi:
buffer = os.read(io, BUFFER_SIZE)
OSError: [Errno 11] Resource temporarily unavailable
Bất cứ ai biết điều gì là sai?
thể trùng lặp của [những điều kiện dẫn đến một, nonblocking tên ống mở (fifo) là "không có sẵn" cho lần đọc?] (http://stackoverflow.com/questions/10021759/what-conditions-result-in-an-opened-nonblocking-named-pipe-fifo-being-unavai) Tuy nhiên, câu hỏi này chắc chắn vẫn hữu ích, vì đó là cách phân biệt duy nhất có nghĩa là nó là bản đầu tiên tôi tìm thấy trên Google. – Seanny123
'TênError: tên 'fifo' không được xác định' bạn có thể sửa lỗi không? – n611x007