[Overview][Constants][Types][Classes][Procedures and functions][Variables][Index] | Reference for unit 'Forms' (#lcl)

# TAsyncCallQueues

Management information for asynchronous callbacks.

## Declaration

Source position: forms.pp line 1413

`type TAsyncCallQueues = record`
`CritSec: TRTLCriticalSection;` |  | The critical section for adding and removing queue elements.
`Cur: TAsyncCallQueue;` |  | The currently processed queue. Processed entries are removed.
`Next: TAsyncCallQueue;` |  | New calls are added to this queue.
`end;`

## Description

Two queues are used in TAsyncCallQueues. New calls are added to the Next queue. Cur contains the callbacks currently being processed in the queue.

When the application starts processing the calls, the Next queue becomes the Cur queue, and a new Next queue is created. This simplifies thread-safe addition in subsequent calls.

## See also

TApplication.QueueAsyncCall |  | Inserts an asynchronous call into the queue.