gthread: consider intial connectino as idle

this change consider the connection is iddle when started and remove it from the eventloop if no change appears in the interval. 

This prevents the connection queued for too much time.
This commit is contained in:
Benoit Chesneau 2023-05-07 18:02:49 +02:00 committed by GitHub
parent a423fca8e5
commit e7781d2c2c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -122,10 +122,13 @@ class ThreadWorker(base.Worker):
sock, client = listener.accept()
# initialize the connection object
conn = TConn(self.cfg, sock, client, server)
# set timeout to ensure it will not be in the loop too long
conn.set_timeout()
self.nr_conns += 1
# wait until socket is readable
with self._lock:
self._keep.append(conn)
self.poller.register(conn.sock, selectors.EVENT_READ,
partial(self.on_client_socket_readable, conn))
except EnvironmentError as e: