code: def get_new_checks(self, queue, return_queue):
          
          try:
              logger.debug("get_new_checks: %s / %s", len(self.checks), self.processes_by_worker)
              while len(self.checks) < self.processes_by_worker:
                  msg = queue.get_nowait()
                  if msg is None:
                      time.sleep(0.01)
                      continue
                  logger.debug("Got a message: %s", msg)
                  if msg.get_type() == 'Do':
                      logger.debug("Got an action: %s", msg.get_data())
                      self.checks.append(msg.get_data())
                      self.actions_got += 1
                  elif msg.get_type() == 'ping':
                      msg = Message(_type='pong', data='pong!', source=self._id)
                      logger.debug("Queuing message: %s", msg)
                      return_queue.put_nowait(msg)
                      logger.debug("Queued")
                  else:
                      logger.warning("Ignoring message of type: %s", msg.get_type())
          except Full:
              logger.warning("Actions queue is full")
          except Empty:
              logger.debug("Actions queue is empty")
              if not self.checks:
                  self._idletime += 1
          # Maybe the Queue() has been deleted by our master ?
          except (IOError, EOFError) as exp:
              logger.warning("My actions queue is no more available: %s", str(exp))
              self.interrupted = True
          except Exception as exp:  # pylint: disable=broad-except
              logger.error("Failed getting messages in actions queue: %s", str(exp))
  
          logger.debug("get_new_checks exit")
docs: Get new checks if less than nb_checks_max
          If no new checks got and no check in queue, sleep for 1 sec
          REF: doc/alignak-action-queues.png (3)
  
          :return: None