我正在使用.NET Core,并使用Roslyn编译了多个.CSX脚本。 我想检查是否可以监视正在运行的脚本,以了解某个特定脚本何时结束并且仅运行已经完成的脚本。
我将举一个当前工作方式的例子:
脚本创建(委托)
多次执行此操作,以生成包含我必须执行的所有脚本的ScriptRunner列表
var script = CSharpScript.Create(
code: scriptCode,
options: ScriptOptions.Default
.WithReferences(referencias.Split(","))).
ContinueWith(instrucciones).CreateDelegate();
脚本执行
然后,所有创建的脚本将按以下方式执行:
foreach (var script in listadoScriptsCreados)
{
Task.Run(async () => { await script(); });
Task.Delay(TimeSpan.FromMilliseconds(ejecucion.Intervalo)).Wait();
}
如您所见,我正在运行脚本而不询问是否完成,我需要知道脚本是否结束