Queue
Inhaltsverzeichnis
Allgemein
Eine Queue, auch Warteschlange genannt, wird häufig zur Verwaltung von Arbeitsaufträgen verwendet (z.B. Druckaufträge in einer Druckerwarteschlange). Warteschlangen arbeiten nach dem FIFO-Prinzip (First in, first out), was bedeutet, dass Aufträge, die der Warteschlange als erstes zugefügt werden, auch als erstes bearbeitet werden. Eine Warteschlange besteht aus einem head, einem tail und aus den sogenannten nodes (Knoten). Objekte vom Typ node speichern jeweils einen Verweis auf die nächste Node und auf ein beliebiges Inhaltsobjekt (content). Head verweist dabei auf den ersten Knoten in der Warteschlange, wohingegen tail auf den letzten Knoten der Warteschlange verweist. Somit entsteht eine klare Reihenfolge von beispielsweisen Druckeraufträgen, die dann nach und nach abgearbeitet werden können. Bei der Warteschlange handelt es sich um eine dynamische Datenstruktur, was bedeutet, dass die Größe der Warteschlangen, beziehungsweise die Anzahl der in ihr enthaltenen Knoten, veränderbar ist.