Comparison

net/server_epoll.lua @ 11812:42e98179c034

Merge 0.11->trunk
author Kim Alvefur <zash@zash.se>
date Mon, 20 Sep 2021 15:51:43 +0200
parent 11805:2327e03d1f8d
parent 11811:ae43166fe931
child 11813:790bffbb9047
comparison
equal deleted inserted replaced
11808:c24580a214f3 11812:42e98179c034
87 -- Whether to let the Nagle algorithm stay enabled 87 -- Whether to let the Nagle algorithm stay enabled
88 nagle = true; 88 nagle = true;
89 89
90 -- Reuse write buffer tables 90 -- Reuse write buffer tables
91 keep_buffers = true; 91 keep_buffers = true;
92
93 --- How long to wait after getting the shutdown signal before forcefully tearing down every socket
94 shutdown_deadline = 5;
92 }}; 95 }};
93 local cfg = default_config.__index; 96 local cfg = default_config.__index;
94 97
95 local fds = createtable(10, 0); -- FD -> conn 98 local fds = createtable(10, 0); -- FD -> conn
96 99
1002 -- Signal main loop about shutdown via above upvalue 1005 -- Signal main loop about shutdown via above upvalue
1003 local function setquitting(quit) 1006 local function setquitting(quit)
1004 if quit then 1007 if quit then
1005 quitting = "quitting"; 1008 quitting = "quitting";
1006 closeall(); 1009 closeall();
1010 addtimer(1, function ()
1011 if quitting then
1012 closeall();
1013 return 1;
1014 end
1015 end);
1016 if cfg.shutdown_deadline then
1017 addtimer(cfg.shutdown_deadline, function ()
1018 if quitting then
1019 for fd, conn in pairs(fds) do -- luacheck: ignore 213/fd
1020 conn:destroy();
1021 end
1022 end
1023 end);
1024 end
1007 else 1025 else
1008 quitting = nil; 1026 quitting = nil;
1009 end 1027 end
1010 end 1028 end
1011 1029