- Name
-
ul_epoll_ctl_fast
- Default
-
1
- Minimum
-
0
- Maximum
-
1
- Scope
- per-process
Avoid system calls in epoll_ctl()
when using an accelerated epoll implementation. System calls are deferred until epoll_wait()
blocks, and in some cases removed completely. This option improves performance for applications that call epoll_ctl()
frequently.
Caveats:
- This option has no effect when EF_UL_EPOLL=
0
. - Do not turn this option on if your application uses
dup()
,fork()
orexec()
with epoll file descriptors or with the sockets monitored by epoll. - If you monitor the epoll fd in another poll, select or epoll set, and have this option enabled, it might not give correct results.
- If you monitor the epoll fd in another poll, select or epoll set, and the effects of
epoll_ctl()
are latency critical, then this option can cause latency spikes or even deadlock. - With EF_UL_EPOLL=
2
, this option is harmful if you are callingepoll_wait()
andepoll_ctl()
simultaneously from different threads or processes.