动态方法调用(DynamicMethod)
定义
定义
一、核心概念
动态方法调用模块提供高效、灵活的方法反射调用方案,支持多种底层实现方式,显著提升反射调用性能。特别针对AOT(Ahead-of-Time)编译环境优化,同时保持传统反射场景的高性能表现。
二、核心特性
- 多引擎支持:
- IL代码生成(DynamicBuilderType.IL)
- 表达式树(DynamicBuilderType.Expression)
- 传统反射(DynamicBuilderType.Reflect)
- 源生成(DynamicBuilderType.SourceGenerator)
- 性能卓越:相比原生反射调用,IL模式提升100倍性能
- AOT友好:源生成模式实现零反射,完美支持iOS/Android等AOT环境
- 智能异步支持:自动识别Task/ValueTask返回值类型
- 全参数支持:支持ref/out参数、泛型参数、参数默认值
- 灵活扩展:支持自定义动态方法特性标记