Software /
code /
prosody
File
teal-src/util/poll.d.tl @ 12515:76c1725f4467
net.server_epoll: Add option to defer accept() until data available
This is a Linux(?) socket option that delays the accept signal until
there is data available to read. E.g. with HTTP this might mean that a
whole request can be handled without going back trough another turn of
the main loop, and an initial client <stream> can be responded to.
This may have effects on latency and resource use, as the server does
not need to allocate resources until really needed.
author | Kim Alvefur <zash@zash.se> |
---|---|
date | Sun, 15 May 2022 22:41:17 +0200 |
parent | 12316:6bb2f660f689 |
line wrap: on
line source
local record state enum waiterr "timeout" "signal" end add : function (state, integer, boolean, boolean) : boolean add : function (state, integer, boolean, boolean) : nil, string, integer set : function (state, integer, boolean, boolean) : boolean set : function (state, integer, boolean, boolean) : nil, string, integer del : function (state, integer) : boolean del : function (state, integer) : nil, string, integer wait : function (state, integer) : integer, boolean, boolean wait : function (state, integer) : nil, string, integer wait : function (state, integer) : nil, waiterr getfd : function (state) : integer end local record lib new : function () : state EEXIST : integer EMFILE : integer ENOENT : integer enum api_backend "epoll" "poll" "select" end api : api_backend end return lib