一般来说,我应该在应用程序的生命周期内保留一个ScriptEngine,还是应该根据需要创建和销毁它们?
答案 0 :(得分:3)
每个AppDomain一个ScriptEngine就可以了。要隔离脚本,请确保每个脚本都在自己的ScriptScope中执行。通过重用ScriptEngine,IronPython不必重新编译任何导入的模块,这通常是IronPython中最慢的部分,特别是如果它们是短时间运行的脚本。
答案 1 :(得分:1)
我肯定会尝试限制您实例化的脚本引擎的数量。这是一个缓慢的过程(根据我的经验),所以你等待它的次数越少越好。
在那个说明中,我会小心只有1.我认为如果你有1,脚本可能(可能)可能会干扰彼此。我不确定,但要小心。