code: def get_nowait(self):
          
          new_get = Future()
  
          with self._lock:
              if not self._get.done():
                  raise QueueEmpty
              get, self._get = self._get, new_get
  
          hole = get.result()
          if not hole.done():
              # Restore the unfinished hole.
              new_get.set_result(hole)
              raise QueueEmpty
  
          node = hole.result()
          value = node.value
          new_hole, node.next = node.next, None
          new_get.set_result(new_hole)
          return value
docs: Returns a value from the queue without waiting.
  
          Raises ``QueueEmpty`` if no values are available right now.