离子拉链抛出内存exception

我使用离子拉链(版本-1.9.1.8)来压缩一些文件..我通常有大文件总结到2到3 GB …这个离子拉链在我的系统中工作正常,但是当我在另一个用户机器上使用它(ONSITE )…这个离子拉链抛exception如下。两个系统的configuration都是一样的。

Exception details: ****************** [6/11/2012 01:21:38:812] System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown. at Ionic.Zip.ZipEntry._WriteEntryData(Stream s) at Ionic.Zip.ZipEntry.Write(Stream s) at Ionic.Zip.ZipFile.Save() at Ionic.Zip.ZipFile.Save(String fileName) at MyCode.SaveZipFile() [6/11/2012 01:21:38:828] System.NullReferenceException: Object reference not set to an instance of an object. at Ionic.Zlib.ParallelDeflateOutputStream._Flush(Boolean lastInput) at Ionic.Zlib.ParallelDeflateOutputStream.Close() at Ionic.Zlib.ParallelDeflateOutputStream.Dispose() at Ionic.Zip.ZipFile.Dispose(Boolean disposeManagedResources) at Ionic.Zip.ZipFile.Dispose() at Mycode.SaveZipFile() at Mycode.SaveLogs() 

有人可以帮助我find这样的问题的原因.. ??

提前致谢

Solutions Collecting From Web of "离子拉链抛出内存exception"

你需要显示代码。 如果您的应用程序正在压缩到内存流中,则它将容易出现内存不足的情况。 这将是你的应用程序,而不是在图书馆的问题。

另外 – 我从堆栈跟踪看到,它使用的是平行的deflater。 这交易内存的运行时间。 如果你有内存问题,你可以禁用并行压缩,并使用更少的内存。

在你的代码中通过这样的事情来做到这一点:

  zip.ParallelDeflateThreshold = -1; 

另请参阅此功能的文档: http : //cheeso.members.winisp.net/DotNetZipHelp/html/0988edb5-1d59-2875-8e77-ad195601cbce.htm