我在写一个屏幕录像的软件
我先把截屏的照片放在本地硬盘中。然后 最后for把照片读取出来写入avi中。但是如果照片过多的话 会导致内存不足。。  
 
该怎么解决??? 我想没写入1000个图片 sleep 一段时间能解决这个问题吗  能的话该咋写

解决方案 »

  1.   

    图片不保存,直接写入avi中 可以不?
      

  2.   

    for循环里读一次,就释放一次行不行?
      

  3.   

    写完后avi多大啊
    是不是太大了
      

  4.   

    这问题是这样。
    我一直鄙视.net的图像处理部分当你把图片读进内存的时候 自动释放就别指望了
    因为其有个什么生存周期的说法,基本上不释放
    解决办法如下Image image = Image.FromFile("图片文件");
                //.
                //.
    image.Dispose();//用完了 直接释放并回收
    GC.Collect();应该能解决你的问题
      

  5.   

    又不是让你一下子吧照片都放到内存里面读一部分照片 然后写入 avi文件里面循环里面 记得 加System.Windows.Forms.Application.DoEvents()
      

  6.   

    就是 你图片太大了。net 显示图片就是 很慢的
    楼上的意思是 每2行扫描一次 
    就是相当于 缩小图像