我正在编写一个以设定的时间间隔捕获屏幕的程序,当我开始测试时,我发现在它开始捕获图片后我几乎立即收到了 OutOfMemoryException。我尝试分配更多内存 - 我给了它 256m,但这几乎没有帮助。它所做的只是让它在抛出异常并再次崩溃之前再持续 2 或 3 秒。
我知道 createScreenCapture(...) 方法使用大量内存,但我已经看到可以使用相同方法长时间记录的示例程序 - 他们是如何做到的?
编辑:我已经使用了你们的一些建议,现在我没有得到 OutOfMemoryExceptions!万岁!我采取了将照片保存到硬盘驱动器的路线。但是,实际上将它们写入存档文件确实需要很长时间。将 63 帧写入存档文件需要将近 2 分钟!
我无法提供任何代码,因为我正在重写 I/O 部分。致力于改善 ^ 情况。