描述:
  Adoquery的LoadFromFile始终是在内存中创建一个和file一样大小的空间出来,这样以来如果文件上百兆甚至大于系统内存就没有办法将blob cache进去,导致系统资源过多占用.
  请教达人如何避免内存占用过大的问题?

解决方案 »

  1.   

    感谢楼上的热心,可能问题描述有点问题,补充下
    不是不能释放,300mb就可以吃光你的内存资源了,是要如何避免将文件cache到内存中再上传的问题
      

  2.   

    那就用流的形式分段Load,不过这样显得很麻烦。而其实我看到的情况是一般都存入了虚拟内存中,即还是以牺牲硬盘的空间为代价,对内存影响好像并不大。
      

  3.   

    上百M的文件存到BLOB字段?那取出来也会比较慢的,是什么文件,搞这么大
      

  4.   

    读几条到一个临时文件中去,然后去loadfromfile(),如果此进行,应该可以
      

  5.   

    暂时占用过多一样会导致系统资源耗尽的,难道delphi就没有办法解决这个问题了?