dotnetzip压缩大文件 - Unity应用程序停止响应

时间:2015-02-05 14:30:28

标签: c# unity3d dotnetzip

我在Unity3d项目中使用dotnetzip来压缩/解压缩文件。我使用类似下面的代码来压缩一些部分zip文件。如果文件很小,一切都按预期工作。但如果这些文件很大(每个文件大约100mb),那么Unity应用程序(exe)就会停止响应。我没有得到任何错误。但我认为这是由于内存问题,因为如果文件很小,它就可以工作 你能告诉我如何解决这个问题。

  String[] filenames = { "ReadMe.txt", "c:\\data\\ABC_ExportContent.zip.001", "c:\\data\\ABC_ExportContent.zip.002", "c:\\data\\ABC_ExportContent.zip.003"};
  using (ZipFile zip = new ZipFile())
  {
    zip.AddFiles(filenames);
    zip.Save("Archive.zip");
  }

更新 - 今天我在打开的任务管理器中对此进行了测试,由于CPU使用率达到100%,应用程序无法响应。正如我猜测的那样,实际上并不是因为记忆。 请让我知道如何克服这个问题。

更新2 - 由于我找不到解决方案,所以决定转移到SharpZipLib,到目前为止似乎做得很好。

1 个答案:

答案 0 :(得分:0)

我们通过使用SharpZipLib而不是dotnetzip来解决这个问题。