ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/libev/ev.pod
(Generate patch)

Comparing libev/ev.pod (file contents):
Revision 1.351 by root, Mon Jan 10 14:24:26 2011 UTC vs.
Revision 1.352 by root, Mon Jan 10 14:30:15 2011 UTC

592On the positive side, this backend actually performed fully to 592On the positive side, this backend actually performed fully to
593specification in all tests and is fully embeddable, which is a rare feat 593specification in all tests and is fully embeddable, which is a rare feat
594among the OS-specific backends (I vastly prefer correctness over speed 594among the OS-specific backends (I vastly prefer correctness over speed
595hacks). 595hacks).
596 596
597On the negative side, the interface is I<bizarre>, with the event polling 597On the negative side, the interface is I<bizarre> - so bizarre that
598even sun itself gets it wrong in their code examples: The event polling
598function sometimes returning events to the caller even though an error 599function sometimes returning events to the caller even though an error
599occured, but with no indication whether it has done so or not (yes, it's 600occured, but with no indication whether it has done so or not (yes, it's
600even documented that way) - deadly for edge-triggered interfaces, but 601even documented that way) - deadly for edge-triggered interfaces where
602you absolutely have to know whether an event occured or not because you
603have to re-arm the watcher.
604
601fortunately libev seems to be able to work around it. 605Fortunately libev seems to be able to work around these idiocies.
602 606
603This backend maps C<EV_READ> and C<EV_WRITE> in the same way as 607This backend maps C<EV_READ> and C<EV_WRITE> in the same way as
604C<EVBACKEND_POLL>. 608C<EVBACKEND_POLL>.
605 609
606=item C<EVBACKEND_ALL> 610=item C<EVBACKEND_ALL>

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines