缓存反射信息
本文关键字:信息 反射 缓存 | 更新日期: 2023-09-27 18:32:23
什么会更快,通过反射访问MethodInfo
:
var info = instance.GetType().GetMethod(methodName,
System.Reflection.BindingFlags.Static |
System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.Public |
System.Reflection.BindingFlags.NonPublic);
每次我需要调用方法时,还是应该将MethodInfo
存储在Dictionary<..., MethodInfo>
中,而不是通过字典的键访问方法信息?
谢谢!
缓存反射信息总是更好,因为当您通过内置 API 检索它们时,它会锁定全局字典以提供唯一实例。对于它们的高使用率 + 多线程,这可能很糟糕。预缓存可以提供帮助。