caching - 如何处理并发Web用户的重置CS-Script

使用CSScript.Evaluator.Reset()时,这会重置当前正在使用同一脚本或内部版本的其他任何人吗?

问我问题的另一种方式。
脚本= CSScript.Evaluator.LoadCode(scriptString);
如果另一个用户通过并调用了相同的代码,但是发生了错误。
原始编译文件仍然是安全的吗?

另外CSScript.Evaluator.AutoResetEvaluatorOnError = true,这似乎不起作用。
在代码中导致错误后,请修复它。在重置我的应用程序或使用Reset()之前,编译将无法进行。

使用Reset可以正常工作,但这就是我最初提出问题的原因。

我正在使用CSScript.Evaluator.LoadCode并查看CSScript.Evaluator.LoadMethod,但是遇到了相同的问题。

这些不是很大的脚本,但是可以成批运行或循环运行。
不反对唯一的命名,因为无论如何我将为每次运行都构建。
但是我也不确定缓存是否正常工作。

启用CSScript.CacheEnabled时,缓存文件夹的位置在哪里?

最佳答案

Would the original compile still be good and safe?



是的,就像您持有对已编译对象的引用时那样。即使您破坏了编译器,我也很好。

Also CSScript.Evaluator.AutoResetEvaluatorOnError = true, this does not seem to be working.



此设置会触发如此冷的SoftReset,这与Reset不同,仅在于重新引用程序集并重新创建CompilerSettings对象。最初实现SoftReset的时间足以完全清除Mono.Evaluator。我将需要检查可能不再是这种情况了。我会让你知道结果。

Where is the location of the cache folder, when CSScript.CacheEnabled is enabled?



缓存不包括Mono Evaluator,因为所有程序集都在内存中并且无法缓存。
适用于Mono编译器的通过CSScript.Evaluator。*访问的所有内容,以及通过CSScript。*访问的所有内容均为CodeDOM编译器,它确实实现了缓存机制。

https://stackoverflow.com/questions/28113432/

相关文章:

actionscript-3 - 如果使用 Flash Builder 4.7 而不是 4.6,则基

compilation - 如何在Windows上的SCons中导出具有备用扩展名的程序

macos - AudioFileReadPackets错误-50

compiler-errors - 如何解决MiniZinc错误: “model inconsist

c# - 根据文本框错误重新定义变量

compiler-errors - Lazarus IDE-编译失败: Cannot open in

compiler-errors - gfortran在编译文件上不输出ident工具

sql - Microsoft SQL服务器

opencv - 使用 CUDA 支持构建 OpenCV transpose.cu 上的错误

c# - MVC3网站编译器错误