ZIP??????????
??
Aspose.ZIP API ??ZIP ???????????????????�?????????????????????????????????????????????????????
ZIP ???????: ??
ParallelOptions ??????????????? CPU ????????????????????
ParallelCompressInMemory ???????????????????????? ??? 3 ?????????????
ParallelCompressionMode.Never: ????????????????????? 1 ?? CPU ????????????????????????????????ParallelCompressionMode.Always: ???? ???????????????????????????????????????????????? CPU ?????????? RAM ??????????????????????????????????????????????????? RAM ???????????? N ???? (N ? CPU ????) ?????????????CLR ?????????? RAM ????????OutOfMemoryExcepton ??????????????ParallelCompressionMode.Auto: ???????? ???? CPU ??????????????????????????????????????????????????????????????????????????????????????????????????? LZMA ????????????????????????????????????????????????????Aspose.ZIP ??????????????????????????????????????? ParallelOptions ????????? 1 ????? - AvailableMemorySize?????????????????????????? CPU ??????????????????????????? (???????) ??? Aspose.ZIP ????????????????????????????????????????????????????????????? AvailableMemorySize ??????????????????????????RAM ?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????
????????????????????????????????????????????????????
C# ?????????????? ZIP ????????????
??: C# ?????????? ZIP ??????????
FileMode.Create????? ????? (FileStream) ??????? ZIP ???? (archive.zip) ???????- ZIP ???????????????
Archive?????????????? CreateEntry???????????first.bin???last.bin????????????????File.OpenRead???????? ???? (data1.bin???data1.bin??) ?????????dataN.bin)?ArchiveSaveOptions?ParallelOptions???????????ParallelCompressInMemory?ParallelCompressionMode.Always?????????????????????????????????- ?Save?????????????????????????????????????
1 using (FileStream zipFile = File.Open("archive.zip", FileMode.Create))
2 {
3 using (Archive archive = new Archive())
4 {
5 archive.CreateEntry("first.bin", File.OpenRead("data1.bin"));
6 ...
7 archive.CreateEntry("last.bin", File.OpenRead("dataN.bin"));
8 archive.Save(zipFile, new ArchiveSaveOptions()
9 {
10 ParallelOptions = new ParallelOptions()
11 { ParallelCompressInMemory = ParallelCompressionMode.Always }
12 });
13 }
14 }