A queue that produces elements sorted by the first component value.

    shapes, component_types=[], capacity=-1, container='', shared_name='', name=None

Note that the PriorityQueue requires the first component of any element to be a scalar int64, in addition to the other elements declared by component_types. Therefore calls to Enqueue and EnqueueMany (resp. Dequeue and DequeueMany) on a PriorityQueue will all require (resp. output) one extra entry in their input (resp. output) lists.


  • shapes: A list of shapes (each a tf.TensorShape or list of ints). The shape of each component in a value. The length of this attr must be either 0 or the same as the length of component_types. If the length of this attr is 0, the shapes of queue elements are not constrained, and only one element may be dequeued at a time.
  • component_types: An optional list of tf.DTypes. Defaults to []. The type of each component in a value.
  • capacity: An optional int. Defaults to -1. The upper bound on the number of elements in this queue. Negative numbers mean no limit.
  • container: An optional string. Defaults to "". If non-empty, this queue is placed in the given container. Otherwise, a default container is used.
  • shared_name: An optional string. Defaults to "". If non-empty, this queue will be shared under the given name across multiple sessions.
  • name: A name for the operation (optional).


A Tensor of type resource.