gpt4 book ai didi

c# - 什么更快 : expression trees or manually emitting IL

转载 作者:可可西里 更新时间:2023-11-01 08:37:11 25 4
gpt4 key购买 nike

创建直接发出 IL 的方法与构建表达式树之间是否存在性能差异?

最佳答案

优秀而复杂的问题。最近之前,Expression 根本无法处理所有情况 - 因此在许多情况下这是毫无疑问的。这随着 Expression.Block 等的引入而改变。在大多数“常见”情况下,Expression 的使用可能绰绰有余,但我承认我没有精确的测量,仅仅是因为虽然我做了很多 IL,但我还针对没有像 Expression(当然不是 Expression.Block)这样的奢侈品的下层框架。我也倾向于使用复杂的“装饰器”方法,这些方法可以很好地在 IL 中堆叠体操,但不一定进入 Expression(实际上,如果您的 IL 非常不典型以至于 reflector 等人与之抗争,那么它可能也不会映射干净地表达 - 我的 IL 往往非常粗糙)。

对不起,我不能给你更多的数字数据——关键点:

  • 如果您有下层框架要求,那么这个问题就没有实际意义了
  • 否则,你必须分析

关于c# - 什么更快 : expression trees or manually emitting IL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16530539/

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