the*_*van 5 c# asp.net delegates
我是代表们的新概念.我已经知道它类似于C++中的指针.在其优势中,它提到了代表的有效使用提高了性能.
考虑到它是一个指针.它如何改善应用程序的性能?
如果有人能用一个简单的例子解释这一点,那将会有所帮助.
委托并不直接提高性能——它们是关于抽象调用。用C++术语来说,它确实就像一个方法指针。
委托的大多数用途与性能无关。让我们从一开始就明确这一点。
然而,它可以用来帮助提高性能的一个主要时间是它允许元编程等场景。代码(通常是库代码)可以根据运行时的配置信息构建复杂的行为链,然后通过 、Expression或TypeBuilder(DynamicMethod或基本上任何允许您构建 IL 的 API)将该信息编译到方法中。但要调用此类动态生成的方法,您需要一个委托 - 因为从 C# 编译的静态 IL 无法引用当时不存在的方法。
请注意,执行此操作的另一种方法是TypeBuilder创建(在运行时)从子类继承或实现已知接口的新类型,然后创建动态生成类型的实例,该实例可以转换为预期的 API以通常的方式并正常调用。
| 归档时间: |
|
| 查看次数: |
565 次 |
| 最近记录: |