我使用C#中的IronPython脚本:
scriptEngine = Pythn.CreateEngine();
var scriptSource = scriptEngine.CreateScriptSourceFromFile(pathToScriptFile, Encoding.Default, SourceCodeKind.File);
scriptSource.Execute(_mainScope);
正在开始的脚本会持续一段时间,我想知道是否可以从C#角度以某种方式阻止它。
答案 0 :(得分:1)
与实际线程非常相似,没有安全的方法可以从外部角度终止运行代码,除非正在运行的代码提供了取消机制(例如.NET中的CancellationToken
)或者它是否在外部运行过程,在这种情况下,你可以安全地将其杀掉。
您还可以生成一个新线程,在其上运行代码并终止线程,但是杀死线程非常危险,所以我强烈建议不要这样做。