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

Comparing libev/ev.pod (file contents):
Revision 1.458 by root, Fri Dec 20 20:51:46 2019 UTC vs.
Revision 1.459 by root, Wed Jan 22 01:50:42 2020 UTC

1648 1648
1649This section describes each watcher in detail, but will not repeat 1649This section describes each watcher in detail, but will not repeat
1650information given in the last section. Any initialisation/set macros, 1650information given in the last section. Any initialisation/set macros,
1651functions and members specific to the watcher type are explained. 1651functions and members specific to the watcher type are explained.
1652 1652
1653Members are additionally marked with either I<[read-only]>, meaning that, 1653Most members are additionally marked with either I<[read-only]>, meaning
1654while the watcher is active, you can look at the member and expect some 1654that, while the watcher is active, you can look at the member and expect
1655sensible content, but you must not modify it (you can modify it while the 1655some sensible content, but you must not modify it (you can modify it while
1656watcher is stopped to your hearts content), or I<[read-write]>, which 1656the watcher is stopped to your hearts content), or I<[read-write]>, which
1657means you can expect it to have some sensible content while the watcher 1657means you can expect it to have some sensible content while the watcher
1658is active, but you can also modify it. Modifying it may not do something 1658is active, but you can also modify it. Modifying it may not do something
1659sensible or take immediate effect (or do anything at all), but libev will 1659sensible or take immediate effect (or do anything at all), but libev will
1660not crash or malfunction in any way. 1660not crash or malfunction in any way.
1661 1661
1662In any case, the documentation for each member will explain what the
1663effects are, and if there are any additional access restrictions.
1662 1664
1663=head2 C<ev_io> - is this file descriptor readable or writable? 1665=head2 C<ev_io> - is this file descriptor readable or writable?
1664 1666
1665I/O watchers check whether a file descriptor is readable or writable 1667I/O watchers check whether a file descriptor is readable or writable
1666in each iteration of the event loop, or, more precisely, when reading 1668in each iteration of the event loop, or, more precisely, when reading
1829 1831
1830Configures an C<ev_io> watcher. The C<fd> is the file descriptor to 1832Configures an C<ev_io> watcher. The C<fd> is the file descriptor to
1831receive events for and C<events> is either C<EV_READ>, C<EV_WRITE> or 1833receive events for and C<events> is either C<EV_READ>, C<EV_WRITE> or
1832C<EV_READ | EV_WRITE>, to express the desire to receive the given events. 1834C<EV_READ | EV_WRITE>, to express the desire to receive the given events.
1833 1835
1834=item int fd [read-only] 1836=item ev_io_modify (ev_io *, int events)
1835 1837
1836The file descriptor being watched. 1838Similar to C<ev_io_set>, but only changes the event mask. Using this might
1839be faster with some backends, as libev can assume that the C<fd> still
1840refers to the same underlying file description, something it cannot do
1841when using C<ev_io_set>.
1837 1842
1843=item int fd [no-modify]
1844
1845The file descriptor being watched. While it can be read at any time, you
1846must not modify this member even when the watcher is stopped - always use
1847C<ev_io_set> for that.
1848
1838=item int events [read-only] 1849=item int events [no-modify]
1839 1850
1840The events being watched. 1851The set of events being watched, among other flags. This field is a
1852bit set - to test for C<EV_READ>, use C<< w->events & EV_READ >>, and
1853similarly for C<EV_WRITE>.
1854
1855As with C<fd>, you must not modify this member even when the watcher is
1856stopped, always use C<ev_io_set> or C<ev_io_modify> for that.
1841 1857
1842=back 1858=back
1843 1859
1844=head3 Examples 1860=head3 Examples
1845 1861

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines