gpt4 book ai didi

c# - 由于 JIT_MethodAccessCheck,编译的表达式树很慢

转载 作者:行者123 更新时间:2023-11-30 18:25:55 24 4
gpt4 key购买 nike

我们正在使用编译的表达式树来动态生成代码;一些仅在运行时可用的信息使我们能够(理论上)编写更简单、更快的代码。在许多情况下,我们确实获得了性能提升。

但是,在某些情况下,我们会受到性能影响。在这种情况下,Visual Studio Profiler 会显示性能差异是由这种方法造成的(在静态编译代码中根本不会显示)

JIT_MethodAccessCheck

这个方法有什么作用? (谷歌对此没有太多要说的)。我能以某种方式优化它吗?

最佳答案

JIT_MethodAccessCheck 方法执行安全检查,例如 SecurityTransparent , APTCA以及 @xanatos 提到的类访问检查。

类访问检查包括 SecurityCritical , SecuritySafeCritical , 附加分析器旁路和 LinkDemand .更多详细信息,请访问 coreclr jithelpers.cpp .

由于 coreclr 与 CLR 兼容,我们可以放心地假设两者的检查方式相同。

关于c# - 由于 JIT_MethodAccessCheck,编译的表达式树很慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29397282/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com