change --idle-timeout to reset the idle timeout when active
This commit is contained in:
parent
9348dd5208
commit
82cb31f3b6
18
websocket.py
18
websocket.py
|
|
@ -832,6 +832,7 @@ Sec-WebSocket-Accept: %s\r
|
||||||
# os.fork() (python 2.4) child reaper
|
# os.fork() (python 2.4) child reaper
|
||||||
signal.signal(signal.SIGCHLD, self.fallback_SIGCHLD)
|
signal.signal(signal.SIGCHLD, self.fallback_SIGCHLD)
|
||||||
|
|
||||||
|
last_active_time = self.launch_time
|
||||||
while True:
|
while True:
|
||||||
try:
|
try:
|
||||||
try:
|
try:
|
||||||
|
|
@ -849,11 +850,18 @@ Sec-WebSocket-Accept: %s\r
|
||||||
% self.timeout)
|
% self.timeout)
|
||||||
break
|
break
|
||||||
|
|
||||||
if self.idle_timeout and time_elapsed > self.idle_timeout \
|
if self.idle_timeout:
|
||||||
and child_count == 0:
|
idle_time = 0
|
||||||
self.msg('listener exit due to --idle-timeout %s'
|
if child_count == 0:
|
||||||
% self.idle_timeout)
|
idle_time = time.time() - last_active_time
|
||||||
break
|
else:
|
||||||
|
idle_time = 0
|
||||||
|
last_active_time = time.time()
|
||||||
|
|
||||||
|
if idle_time > self.idle_timeout and child_count == 0:
|
||||||
|
self.msg('listener exit due to --idle-timeout %s'
|
||||||
|
% self.idle_timeout)
|
||||||
|
break
|
||||||
|
|
||||||
try:
|
try:
|
||||||
self.poll()
|
self.poll()
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue