Action thread pooling
- Last UpdatedMar 07, 2025
- 1 minute read
The action thread pool is essentially a pool of four threads that execute actions from three different action queues. Each thread in the pool maintains a database connection.

The three action queues are:
-
Critical queue
-
Normal queue
-
Post-detector delay queue
For detailed information about each of these queues, see Event action priorities.
As a processor thread completes its previous task, a new action will be fetched from one of the queues. If there are any actions in the critical queue, these will be processed first. Actions in the critical queue are executed in the order in which they were added to the queue; that is, the oldest action sitting in the queue will be processed first.
If the critical queue is empty, actions will be fetched from the post-detector delay queue. Actions in the post-detector delay queue are ordered by time. Actions assigned the shortest post-detector delay will be executed first.
If both the critical and post-detector delay queues are empty, actions will be fetched from the normal queue. Like critical actions, normal actions are processed in the order in which they were added to the queue.