Add timeouts to ZMQ backend main loop