MethodImplAttribute 在 .NET 中如何工作?
我正在研究一些框架代码(System.AppDomain.GetDynamicDir 方法),这就是汇编程序显示的全部内容:
[MethodImpl(MethodImplOptions.InternalCall)]
private extern string GetDynamicDir();
调用此方法时会发生什么? 我指的不是这个特定的方法,而是一般具有此属性的方法。
I was investigating some framework code (the System.AppDomain.GetDynamicDir method) and this was all the assembler showed:
[MethodImpl(MethodImplOptions.InternalCall)]
private extern string GetDynamicDir();
What happens when this method is called? I don't mean this specific method, but methods with this attribute in general.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
来自 MSDN:
所以基本上,CLR 提供了它自己的该方法的实现(可能是本机代码),这就是为什么您在反汇编程序中看不到它。
From MSDN:
So basically, the CLR provides its own implementation of this method (which is probably in native code), which is why you can't see it in the disassembler.
在此处回答:
Answer here :