code: def _start_thread(self):
      debug("Queue._start_thread()")
  
      # Start thread which transfers data from buffer to pipe
      self._buffer.clear()
      self._thread = threading.Thread(
          target=Queue._feed,
          args=(
              self._buffer,
              self._notempty,
              self._send_bytes,
              self._wlock,
              self._reader.close,
              self._writer.close,
              self._ignore_epipe,
              self._on_queue_feeder_error,
              self._sem,
          ),
          name="QueueFeederThread",
      )
      self._thread.daemon = True
  
      debug("doing self._thread.start()")
      self._thread.start()
      debug("... done self._thread.start()")
  
      if not self._joincancelled:
          self._jointhread = Finalize(
              self._thread,
              Queue._finalize_join,
              [weakref.ref(self._thread)],
              exitpriority=-5,
          )
  
      # Send sentinel to the thread queue object when garbage collected
      self._close = Finalize(
          self,
          Queue._finalize_close,
          [self._buffer, self._notempty],
          exitpriority=10,
      )
  
imports: import sys
  import os
  import threading
  import collections
  import time
  import types
  import weakref
  import errno
  from queue import Empty, Full
  import _multiprocessing
  from .None import connection
  from .None import context
  from .util import debug, info, Finalize, register_after_fork, is_exiting
label_desc: Use image node_id 16 for calling the Queue obj's underlying member method code with example usage: obj._start_thread() without return types