public async Task <ReturnT> Execute(JobMessage job) { var handler = await _handlerProvider.GetInstanceAsync(job.ExecutorHandler); if (handler == null) { return(ReturnT.Failed($"没有找到名为{job.ExecutorHandler}的JobHandler")); } // if killed if (job.Status == JobStatus.Killed) { return(ReturnT.Failed($"任务已被终止,id:{job.Id}, reason: {job.Reason}, logId: {job.LogId}")); } job.Run(); try { return(await handler.Execute(new JobExecuteContext(job.Id, job.ExecutorParams))); } catch (Exception e) { _logger.LogError(e, "xxljob执行任务错误"); return(ReturnT.Failed(e.Message)); } }