diff --git a/CEP/Pipeline/framework/lofarpipe/support/jobserver.py b/CEP/Pipeline/framework/lofarpipe/support/jobserver.py index 1e2f724730f6a22f29d3aa68b62f343198aa8227..10182fe2890400b089992a7a9445cc810b374bd6 100644 --- a/CEP/Pipeline/framework/lofarpipe/support/jobserver.py +++ b/CEP/Pipeline/framework/lofarpipe/support/jobserver.py @@ -122,11 +122,13 @@ class JobSocketReceiver(SocketServer.ThreadingTCPServer): # until the queue is empty, thereby avoiding the problem of falling # out of the logger threads before all log messages have been handled. def loop_in_thread(): + poller = select.poll() + poller.register(self.socket.fileno(), select.POLLIN) + while True: - rd, wr, ex = select.select( - [self.socket.fileno()], [], [], self.timeout - ) - if rd: + events = poller.poll(self.timeout) + + if events: self.handle_request() elif self.abort: break