.net – 在Win32/COM方法上调用PInvoke时,通常有一个明显的性能
我想知道有没有人有一个体面的解释或概述在使用DLLImport / PInvoke在Win32方法从负责的网络代码?
我打算利用各种Win32方法,并希望更好地了解这样做的负面影响。 谢谢, 布莱恩。
根据
MSDN – Calling Native Functions from Managed Code
根据我的经验,当P /调用本机功能时,绝对会有一个开销,但是通常性能下降并不值得担心。封送费用是要记住的。如果您正在传递大型结构,字符串等,那么性能成本将很快显现。 对于非常频繁调用的P /调用函数,您可能需要考虑将[SuppressUnmanagedCodeSecurity]添加到P / Invoke函数定义(参见MSDN – SuppressUnmanagedCodeSecurityAttribute)。这将使运行时停止堆栈步行,以确保调用者具有非管理代码权限。当然,请确保您在添加此属性之前了解安全性后果。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |