Timeout - ZjzMisaka/PowerThreadPool.zh-CN.Wiki GitHub Wiki

PowerPoolOption.Timeout:表示线程池中所有任务总共可以运行的最长时间, 超过该时间后它们将被终止. 它包括一个以毫秒 (ms) 为单位的持续时间和一个用于强制停止任务的布尔标志.

PowerPoolOption.DefaultWorkTimeout:表示线程池中单个任务可以运行的默认最长时间, 超过该时间后任务将被终止. 它包括一个以毫秒 (ms) 为单位的持续时间和一个用于强制停止任务的布尔标志.

PowerPool powerPool = new PowerPool();
powerPool.PowerPoolOption = new PowerPoolOption()
{
    Timeout = new TimeoutOption() { Duration = 10000, ForceStop = false },
    DefaultWorkTimeout = new TimeoutOption() { Duration = 3000, ForceStop = false },
};

WorkOption.Timeout:表示某个特定任务可以运行的最长时间, 超过该时间后任务将被终止. 它包括一个以毫秒 (ms) 为单位的持续时间和一个用于强制停止任务的布尔标志.

powerPool.QueueWorkItem(() => 
{
    // Do something
}, new WorkOption()
{
    Timeout = new TimeoutOption() { Duration = 2000, ForceStop = true }
});