2009-12-01 19 views
8

Wie können Sie AIO und epoll in einer einzigen Ereignisschleife kombinieren?Wie verwenden Sie AIO und epoll in einer einzigen Ereignisschleife?

Google findet viele Gespräche von 2002 und 2003 über die Vereinheitlichung, aber es ist unklar, ob etwas passiert ist oder ob es möglich ist.

Hat jemand mit einer epoll-Schleife mit eventfd für das Aio-Signal gerollt?

+0

Vergegenwärtigen Sie sich, das ist eine sehr alte Frage, aber Sie könnten 'signalfd' für das Signal von aio verwenden –

Antwort

5

try libevent:

http://www.monkey.org/~provos/libevent/

gibt es Patches sowohl zu unterstützen.

+0

Das neue libeevent 2.0 wird fertig gestellt: http://google-opensource.blogspot.com/2010/01/libevent -20x-like-libevent-14x-only.html - hoffentlich wird AIO als Backend erscheinen, so dass Sie Datei- und Netzwerkbeschreibungen mischen können – Will

0

Versucht eventfd mit Epoll?

"Ein wesentlicher Punkt, um eine Deskriptor-Datei eventfd ist, dass es nur wie jeder anderer Dateideskriptor mit select (2) überwacht werden kann, poll (2) oder epoll (7)."

0

FreeBSD unterstützt AIO zusammen mit kqueue, der AIO Abschluss kann durch die kqueue Schnittstelle überwacht werden.