Skip to content
ZjzMisaka edited this page Sep 16, 2024 · 8 revisions

PowerThreadPool supports a variety of events, making it convenient to manage the entire thread pool or individual work items. Below is a detailed description of each event available in the PowerThreadPool.

Pool Events

PoolStarted

This event is triggered when the thread pool is started.

event EventHandler<EventArgs> PoolStarted;

PoolIdled

This event is fired when the thread pool becomes idle. It indicates that there are no active works and the pool is waiting for new work.

event EventHandler<PoolIdledEventArgs> PoolIdled;

RunningWorkerCountChanged

This event is fired when the running worker count changed.

event EventHandler<RunningWorkerCountChangedEventArgs> RunningWorkerCountChanged;

PoolTimedOut

This event is raised when the thread pool times out.

event EventHandler<EventArgs> PoolTimedOut;

Work Events

WorkStarted

This event occurs when a new work item begins execution in the thread pool.

event EventHandler<WorkStartedEventArgs> WorkStarted;

WorkEnded

This event is triggered when a work item completes its execution. It provides the result and information of the work item.

event EventHandler<WorkEndedEventArgs> WorkEnded;

WorkTimedOut

This event is fired when a work item times out.

event EventHandler<WorkTimedOutEventArgs> WorkTimedOut;

WorkStopped

This event occurs when a work item is stopped before completion. It can be used to handle cases where works need to be terminated.

event EventHandler<WorkStoppedEventArgs> WorkStopped;

WorkCanceled

This event is triggered when a work item is canceled before executing.

event EventHandler<WorkCanceledEventArgs> WorkCanceled;

ErrorOccurred

This event is raised when an error occurs within the thread pool or during the execution of a work item. It provides details about the error.

event EventHandler<ErrorOccurredEventArgs> ErrorOccurred;
Clone this wiki locally