【问题标题】:does function/routine present in the .dll runs faster?.dll 中的函数/例程运行得更快吗?
【发布时间】:2014-04-02 14:34:05
【问题描述】:

由于我是 C++ 新手,我想知道 .dll(动态链接库)文件中的函数/过程/例程是否比同一个文件中的正常函数/过程/例程执行得更快?或者让我的代码运行得更快,是否应该使用多线程?请提供一些博主链接,如果您知道请回答这个问题。提前致谢。

【问题讨论】:

  • 1:第 2 位:多线程不会让程序运行得更快,但会让编程更难。远离多线程,直到您对单线程程序有非常牢靠的掌握,尤其是如何调试它们。
  • DLL 可能会产生开销,这就是加载时间。操作系统必须在程序执行开始时或按需将 DLL 加载到内存中。操作系统还可以选择将 DLL 代码交换到硬盘上,以便为其他 DLL 腾出空间。
  • 仅在必要时使用 DLL。见en.wikipedia.org/wiki/DLL_Hell

标签: c++ multithreading visual-studio-2010 function dll


【解决方案1】:

好吧,我希望调用 DLL 函数会产生一些开销,而不是像您建议的那样。根据这个Overhead of DLL,这个开销非常小,如果有的话。

当你提到多线程时,我想我理解你困惑的根源。 DLL 和多线程之间没有联系! DLL 调用是同步的,就像从可执行文件中调用函数一样。如果您想在单独的线程上执行它们,您只需创建一个单独的线程并从那里调用 DLL 函数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-04-21
    • 1970-01-01
    • 2012-05-22
    • 2012-06-29
    相关资源
    最近更新 更多