Реализация цикла событий для Python 3?
Кто-нибудь знает о библиотеке петель событий (или привязках), доступных для Python 3? Ничего страшного, если он работает только в системах UNIX, хотя я бы предпочел что-то, что делает и Windows.
ЭТА: Я понимаю, что написать систему обработки событий не так уж сложно. Тем не менее, я не хочу изобретать велосипед (мы все еще поощряем не делать этого в наши дни, верно?;-))
Это запланировано для серверного приложения, поэтому, очевидно, я бы хотел что-то, что не связано с инструментарием графического интерфейса или что-то еще.
Если ответ "Нет, его нет" (вероятно, я уверен, что, черт возьми, не могу его найти), то я, скорее всего, создам привязку для Python 3 для libev.
2 ответа
Я предлагаю что-то вроде:
while True:
while queue:
queue.pop()()
Однако, чтобы это работало, система событий должна помещать вызываемые события в очередь.
(Если вас больше интересует конкретная привязка к конкретной платформе, такой как GTK, Qt, WxWidgets, NCurses, Cocoa, Winforms, что угодно, тогда говорите это!).
libev доступен для python в виде модуля pyev: http://code.google.com/p/pyev/