我有一个异步插件。如果假设a = 1,则我需要取消他的系统工作(将饱和状态更改为CANCELLED)。我该怎么办?
protected override void ExecutePlugin(IServiceProvider serviceProvider)
{
var a = 1;
if(a == 1)
{
//cancel the job
}
}
尝试也给我写+代码,谢谢。
答案 0 :(得分:4)
无法取消异步插件。在插件中,您只能以状态成功或失败(引发异常)结束执行。
只能取消工作流程。
答案 1 :(得分:1)
如果方法是异步的,则在条件满足时可以使用return。像
protected async override Task ExecutePlugin(IServiceProvider serviceProvider)
{
int a = 0; // It's your conditioned value. Here 0 is sample value.
if(a == 1)
{
return;
}
}
但是void方法无法做到这一点。