Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
互操作和x27的性能惩罚;使用C函数调用C#_C#_C_Interop_Profiling - Fatal编程技术网

互操作和x27的性能惩罚;使用C函数调用C#

互操作和x27的性能惩罚;使用C函数调用C#,c#,c,interop,profiling,C#,C,Interop,Profiling,除非对我的代码进行实际的性能测试(我正处于设计阶段),在将C代码连接到C#上的共识是什么?什么时候这样做会有成效,什么时候不会有成效?没有简单的答案 在大多数情况下,将参数封送到方法中或从方法中封送回来的开销可以忽略不计,如果函数不是一个简单的函数,通常比函数内部完成的处理要低得多。但是,在一个严格的、性能关键的循环中执行此操作可能会违反您的性能约束 开销本身很大程度上取决于参数的类型和方法的返回值。封送整数比封送包含许多字符串的结构的数组便宜 如果不知道您的用例,就不可能说出 不过,这对思考有

除非对我的代码进行实际的性能测试(我正处于设计阶段),在将C代码连接到C#上的共识是什么?什么时候这样做会有成效,什么时候不会有成效?

没有简单的答案

在大多数情况下,将参数封送到方法中或从方法中封送回来的开销可以忽略不计,如果函数不是一个简单的函数,通常比函数内部完成的处理要低得多。但是,在一个严格的、性能关键的循环中执行此操作可能会违反您的性能约束

开销本身很大程度上取决于参数的类型和方法的返回值。封送整数比封送包含许多字符串的结构的数组便宜


如果不知道您的用例,就不可能说出

不过,这对思考有点帮助。我想我会在网上找一些例子,看看是否能想出一些具体的想法。谢谢