docs: def __join_connections(self):
          """Wait for all connections to close. There are no side-effects here. 
          We just want to try and leave -after- everything has closed, in 
          general.
          """
  
          interval_s = nsq.config.client.CONNECTION_CLOSE_AUDIT_WAIT_S
          graceful_wait_s = nsq.config.client.CONNECTION_QUIT_CLOSE_TIMEOUT_S
          graceful = False
  
          while graceful_wait_s > 0:
              if not self.__connections:
                  break
  
              connected_list = [c.is_connected for (n, c, g) in self.__connections]
              if any(connected_list) is False:
                  graceful = True
                  break
  
              # We need to give the greenlets periodic control, in order to finish 
              # up.
  
              gevent.sleep(interval_s)
              graceful_wait_s -= interval_s
  
          if graceful is False:
              connected_list = [c for (n, c, g) in self.__connections if c.is_connected]
              _logger.error("We were told to terminate, but not all "
                            "connections were stopped: [%s]", connected_list)