Merge pull request #26 from StandHeo/master

新增任务超时自动取消功能
pull/37/head
xuanye wong 4 years ago committed by GitHub
commit d8e527b7e7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 15
      src/DotXxlJob.Core/Queue/JobTaskQueue.cs

@ -128,7 +128,20 @@ namespace DotXxlJob.Core
_jobLogger.Log("<br>----------- xxl-job job execute start -----------<br>----------- Param:{0}", triggerParam.ExecutorParams);
result = await Executor.Execute(triggerParam, ct);
var exectorToken = ct;
CancellationTokenSource timeoutCts = null;
if (triggerParam.ExecutorTimeout > 0)
{
timeoutCts = new CancellationTokenSource(triggerParam.ExecutorTimeout * 1000);
exectorToken = CancellationTokenSource.CreateLinkedTokenSource(exectorToken, timeoutCts.Token).Token;
}
result = await Executor.Execute(triggerParam, exectorToken);
if(timeoutCts != null && timeoutCts.IsCancellationRequested)
{
result = ReturnT.FAIL_TIMEOUT;
timeoutCts.Dispose();
timeoutCts = null;
}
_jobLogger.Log("<br>----------- xxl-job job execute end(finish) -----------<br>----------- ReturnT:" + result.Code);
}

Loading…
Cancel
Save