code: def worker(self):
      while True:
          if self._shutdown:
              logger.debug(
                  f"Shutting down worker thread {threading.get_ident()}."
              )
              break
          task_f, args, kwargs = self._queue.get()
          task_f(*args, **kwargs)
          # clear the unnecessary references to Run objects
          task_f, args, kwargs = None, None, None
          self._queue.task_done()
  
file_path: aim/aim/ext/task_queue/queue.py
imports: import threading
  import queue
  import atexit
  import logging
label_desc: Use image node_id 3 for calling the TaskQueue obj's underlying member method code with example usage: obj.worker() without return types