我把一程序改为dll后发觉速度变慢了一倍的样子,请问有没有人碰见过这样的问题?

解决方案 »

  1.   

    我是从任务管理器--性能--CPU使用记录看出来效率降低了一倍的!!
      

  2.   

    你是在 频繁加载 DLL吧,建议一次加载,多次使用
      

  3.   

    我看了看,唯一我改掉的地方就是把一些静态数组改成了用new创建的数组,我怀疑是这个地方降低了性能,因为这些数组都比较大,但是在dll里面,我如果用静态数组的话调用的程序会栈溢出,于是我试着在调用的程序里面创建了静态数组,然后用指针把数组传递到了dll里面,结果我发现性能好像反而更低了一点了样,我调用程序是用delphi写的,不知道我应该怎么做才能将性能提升起来啊!!
      

  4.   

    to teli_eurydice 我没有频繁加载,我的dll里面封装了一个线程函数,我只调用了一次
      

  5.   

    是不是copy数组时,用的时间比较长?
      

  6.   

    但是在dll里面,我如果用静态数组的话调用的程序会栈溢出?????--------------new应该没那么慢吧, 还有DLL的函数前面加AFX_MANAGE_STATE了?