[Overview][Types][Classes][Index] Reference for unit 'DynQueue' (#lazutils)

TDynamicDataQueue

[Properties (by Name)] [Methods (by Name)] [Events (by Name)]

Implements a FIFO queue for arbitrary data.

Declaration

Source position: dynqueue.pas line 41

type TDynamicDataQueue = class

public

  constructor Create;

  

Constructor for the class instance.

  destructor Destroy; override;

  

Destructor for the class instance.

  procedure Clear;

  

Frees data items and storage allocated for the queue.

  procedure ConsistencyCheck;

  

Checks for errors in queue settings, item storage space, or item content.

  procedure WriteDebugReport();

  

Generates debugging information for the queue state and optional item data in the queue.

  function Push();

  

Adds the specified content to the FIFO queue.

  function Pop();

  

Removes an item from the top of the FIFO queue.

  function Top();

  

Gets the data for the first queue entry, but does not remove it from the queue.

  property Size: Int64; [r]

  

Total memory required for item data stored in the queue.

  property MinimumBlockSize: Integer; [rw]

  

Indicates the smallest memory block size allocated for an item added to the queue.

  property MaximumBlockSize: Integer; [rw]

  

Indicates the largest memory block size allocated for an item added to the queue.

end;

Inheritance

TDynamicDataQueue

  

Implements a FIFO queue for arbitrary data.

|

TObject

Description

TDynamicDataQueue is a class used to queue arbitrary data for First-In-First-Out usage.

TDynamicDataQueue provides overloaded Push and Pop methods used to enqueue or dequeue data using an untyped buffer or a TStream instance. Use the Top method to peek at data in the queue without removing it.

Internally, TDynamicDataQueue maintains a ring queue for pointers to chunks of data using the TDynamicQueueItem type. It is optimized to reduce the amount of data movement required when adding or removing items.

TDynamicDataQueue is used to implement storage for the TCustomLazComponentQueue component in the lresources.pp unit in the Lazarus Component Library (LCL).

See also

TDynamicQueueItem

  

Represents the size and content for a data item in TDynamicDataQueue.

TCustomLazComponentQueue


Version 4.0 Generated 2025-05-03 Home