Это очень простой c вопрос: что делает файл читаемым с точки зрения метода select () модуля select?
Я открыл файл f в режиме «r». Файл существует и является пустым.
Когда я вызываю select.select ([f], [], []), он всегда сразу возвращается с возможностью чтения f. Конечно, я могу вызвать f.read (), и он возвращает '', ожидаемое указание EOF. Но почему не блокировать вызов select? Когда select () для объекта файла в списке чтения когда-либо блокируется? Что может сделать файл «нечитаемым»?
Я сделал go и проверил неблокирующий бит в флаге fcntl, и он не установлен.
Полагаю, я действительно не понимаю что-то базовое c ...