Skip to content
Eddie Kohler edited this page Oct 17, 2017 · 4 revisions

QuickNoteQueue Element Documentation

NAME

QuickNoteQueue — Click element; stores packets in a FIFO queue

SYNOPSIS

QuickNoteQueue
QuickNoteQueue(CAPACITY)

Ports: 1 input, 1-2 outputs

DESCRIPTION

Stores incoming packets in a first-in-first-out queue. Drops incoming packets if the queue already holds CAPACITY packets. The default for CAPACITY is 1000.

QuickNoteQueue notifies interested parties when it becomes empty and when a formerly-empty queue receives a packet. Unlike the Queue element, QuickNoteQueue's empty notification takes place immediately after the queue goes empty. Like Queue, QuickNoteQueue additionally notifies interested parties that it is non-full, and when a formerly-full queue gains some free space. In all respects but notification, Queue behaves exactly like SimpleQueue.

Multithreaded Click note: QuickNoteQueue is designed to be used in an environment with at most one concurrent pusher and at most one concurrent puller. Thus, at most one thread pushes to the QuickNoteQueue at a time and at most one thread pulls from the QuickNoteQueue at a time. Different threads can push to and pull from the QuickNoteQueue concurrently, however. See ThreadSafeQueue for a queue that can support multiple concurrent pushers and pullers.

ELEMENT HANDLERS

  • length (read-only) — Returns the current number of packets in the queue.
  • highwater_length (read-only) — Returns the maximum number of packets that have ever been in the queue at once.
  • capacity (read/write) — Returns or sets the queue's capacity.
  • drops (read-only) — Returns the number of packets dropped by the queue so far.
  • reset_counts (write-only) — When written, resets the drops and highwater_length counters.
  • reset (write-only) — When written, drops all packets in the queue.

SEE ALSO

Queue, ThreadSafeQueue, SimpleQueue, NotifierQueue, MixedQueue, FrontDropQueue

Generated by click-elem2man from ../elements/standard/quicknotequeue.hh:7 on 2017/10/17.

Clone this wiki locally