已经到800M的内存了  怎么解决

解决方案 »

  1.   

    我在多线程中往StringGrid1里面循环添加数据,差不多有100万的数据运行到3,4万数据 就占800M内存呢
      

  2.   


    100万的数组数据 一个个添加到stringgird中在循环中只要加了stringgird1.Cells[0,k] :=firstValue;  内存值就一点点的增加了  ,去掉这句内存不增加怎么释放内存呢?  又不能释放stringgird 因为要显示
      

  3.   

    实在 要弄 一次性显示 ,就不要用stringgrid 改用 listview 的 ownerdata
      

  4.   

    StringGrid -> DrawGrid
    或者不填充StringGird的内容,直接OnDrawCell事件中写代码输出显示,如果需要编辑得在OnGetEditText中返回内容并在OnSetEditText中设置相应的内容.总之意思就是:Grid显示到那一页时,才即时把数据显示出来,不预设值.这样最多就显示一屏,不过这也有些问题,得缓冲数据,