none
vc++程序 在 windows server 2008 上运行 问题 RRS feed

  • 问题

  • 各位版主:

    1、系统 是 windows server 2008 sp2

    2、数据库是 SQL 2005

    3、程序开发环境是 vc6.0 sp6

    vc6.0写的控制台程序(主要是计算数据,带命令行参数),将计算结果插入到数据库中,第一次执行同时20个,执行速度很快,20分钟跑完

    第一次同样执行20个,执行速度明显下降,得执行 一个小时,才能跑完,

    第三次同样执行20个,执行速度下降的更厉害,得2 个小时,才能跑完,

    出现这样的效果,原因是什么,帮我分析一下,谢谢

    2012年11月28日 6:16

答案

  • 你好,

    我觉得可能和你的内存分配方式有关吧,C++的内存分配是很费时的,并且随着时间的增加,内存会形成很多碎片,程序的运行越来越慢。

    你可以检测一下,是程序中的哪一部分运行速度越来越慢,然后把那部分的代码单独拿出来分析。


    Damon Zheng [MSFT]
    MSDN Community Support | Feedback to us

    • 已标记为答案 涵野 2012年12月3日 3:14
    2012年11月29日 3:30
    版主

全部回复

  • 你好,

    我觉得可能和你的内存分配方式有关吧,C++的内存分配是很费时的,并且随着时间的增加,内存会形成很多碎片,程序的运行越来越慢。

    你可以检测一下,是程序中的哪一部分运行速度越来越慢,然后把那部分的代码单独拿出来分析。


    Damon Zheng [MSFT]
    MSDN Community Support | Feedback to us

    • 已标记为答案 涵野 2012年12月3日 3:14
    2012年11月29日 3:30
    版主
  • 经过 几天的排查,确认是 SQL2005 数据库优化问题,和我在此描述的现象 无关,谢谢,

    2012年12月3日 3:14