diff --git a/posttroll/backends/zmq/publisher.py b/posttroll/backends/zmq/publisher.py index 47cc0ae..84a8f51 100644 --- a/posttroll/backends/zmq/publisher.py +++ b/posttroll/backends/zmq/publisher.py @@ -7,7 +7,7 @@ import zmq from posttroll.backends.zmq import get_tcp_keepalive_options -from posttroll.backends.zmq.socket import close_socket, set_up_server_socket +from posttroll.backends.zmq.socket import authenticator_lock, close_socket, set_up_server_socket LOGGER = logging.getLogger(__name__) @@ -56,4 +56,6 @@ def stop(self): """Stop the publisher.""" close_socket(self.publish_socket) with suppress(AttributeError): - self._authenticator.stop() + with authenticator_lock: + if self._authenticator.is_alive(): + self._authenticator.stop()