X-Git-Url: https://git.llucax.com/software/libev.git/blobdiff_plain/a97e74e3908d62230e834fd7b30f2869136eef31..c9877299894353b8aa7442192b15991de9d4767d:/ev.pod diff --git a/ev.pod b/ev.pod index a3bcef3..f26f84b 100644 --- a/ev.pod +++ b/ev.pod @@ -58,7 +58,9 @@ library in any way. =item ev_tstamp ev_time () -Returns the current time as libev would use it. +Returns the current time as libev would use it. Please note that the +C function is usually faster and also often returns the timestamp +you actually want to know. =item int ev_version_major () @@ -243,7 +245,7 @@ more generic mechanism. Can be used to make a call to C return early (but only after it has processed all outstanding events). The C argument must be either -C, which will make the innermost C call return, or +C, which will make the innermost C call return, or C, which will make all nested C calls return. =item ev_ref (loop) @@ -427,8 +429,8 @@ required if you know what you are doing). You have to be careful with dup'ed file descriptors, though. Some backends (the linux epoll backend is a notable example) cannot handle dup'ed file descriptors correctly if you register interest in two or more fds pointing -to the same file/socket etc. description (that is, they share the same -underlying "file open"). +to the same underlying file/socket etc. description (that is, they share +the same underlying "file open"). If you must do this, then force the use of a known-to-be-good backend (at the time of this writing, this includes only EVMETHOD_SELECT and @@ -774,7 +776,30 @@ Feed an event as if the given signal occured (loop must be the default loop!). =head1 LIBEVENT EMULATION -TBD. +Libev offers a compatibility emulation layer for libevent. It cannot +emulate the internals of libevent, so here are some usage hints: + +=over 4 + +=item * Use it by including , as usual. + +=item * The following members are fully supported: ev_base, ev_callback, +ev_arg, ev_fd, ev_res, ev_events. + +=item * Avoid using ev_flags and the EVLIST_*-macros, while it is +maintained by libev, it does not work exactly the same way as in libevent (consider +it a private API). + +=item * Priorities are not currently supported. Initialising priorities +will fail and all watchers will have the same priority, even though there +is an ev_pri field. + +=item * Other members are not supported. + +=item * The libev emulation is I ABI compatible to libevent, you need +to use the libev header file and library. + +=back =head1 C++ SUPPORT