使用DLL函数是否有任何性能?

时间:2010-10-11 10:27:01

标签: c++ linux g++

正如标题所说,与普通函数相比,调用dll函数是否有一个性能?该DLL将由dlopen加载。 编辑: 忽略dlsym时间,因为我每个函数只执行一次。

3 个答案:

答案 0 :(得分:5)

对DLL函数的调用是按地址间接进行的,编译器无法对它们进行内联,因此会有轻微的性能损失。

如果您在性能关键的内循环中使用它们并在分析它们之后,您应该担心。

答案 1 :(得分:0)

是的,性能受到了打击。您执行dlsym调用以获取函数的地址,然后使用该地址调用该函数。由于与来自同一模块的函数调用相比,添加了dlsym调用,因此它必须更慢。多少重要?这取决于。唯一确定的方法就是衡量它。

答案 2 :(得分:0)

找出答案的最佳方法就是衡量......