class_docstr: A `.Queue` that retrieves entries in priority order, lowest first.
  
  Entries are typically tuples like ``(priority number, data)``.
  
  .. testcode::
  
      import asyncio
      from tornado.queues import PriorityQueue
  
      async def main():
          q = PriorityQueue()
          q.put((1, 'medium-priority item'))
          q.put((0, 'high-priority item'))
          q.put((10, 'low-priority item'))
  
          print(await q.get())
          print(await q.get())
          print(await q.get())
  
      asyncio.run(main())
  
  .. testoutput::
  
      (0, 'high-priority item')
      (1, 'medium-priority item')
      (10, 'low-priority item')
class_docstr_tok: ["A","`",".Queue","`","that","retrieves","entries","in","priority","order",",","lowest","first",".","Entries","are","typically","tuples","like","``","(","priority","number",",","data",")","``",".","..","testcode",":",":","import","asyncio","from","tornado.queues","import","PriorityQueue","async","def","main","(",")",":","q","=","PriorityQueue","(",")","q.put","(","(","1",",","'medium-priority","item","'",")",")","q.put","(","(","0",",","'high-priority","item","'",")",")","q.put","(","(","10",",","'low-priority","item","'",")",")","print","(","await","q.get","(",")",")","print","(","await","q.get","(",")",")","print","(","await","q.get","(",")",")","asyncio.run","(","main","(",")",")","..","testoutput",":",":","(","0",",","'high-priority","item","'",")","(","1",",","'medium-priority","item","'",")","(","10",",","'low-priority","item","'",")"]
code: def _get(self) -> _T:  # type: ignore[type-var]
      return heapq.heappop(self._queue)
  
imports: import collections
  import datetime
  import heapq
  from tornado import gen, ioloop
  from tornado.concurrent import Future, future_set_result_unless_cancelled
  from tornado.locks import Event
  from typing import Union, TypeVar, Generic, Awaitable, Optional
  import typing
label_desc: Use image node_id 3 for calling the PriorityQueue obj's underlying member method code with example usage: obj._get() and returns: heapq