Я пишу приложение Python, которое поддерживает Linux и Windows, и у меня есть файловый объект (у которого есть метод fileno()
, возвращающий дескриптор файла), и мне нужно дождаться завершения ввода-вывода на нем.
В данном конкретном случае это соединение с базой данных (Postgresql), и мне нужно обрабатывать уведомления без нагрузки на процессор (как описано здесь ).
В Linux это довольно просто:
select.select([fd], [], [])
Но я бы хотел сделать что-то подобное и в Windows, и я изо всех сил пытаюсь найти правильный способ добиться этого.
Похоже, WaitForSingleObject
функция может быть удобной, но, насколько я понимаю, она не принимает файловые дескрипторы.
Как это можно решить?