ThinkMeta LogoDeutsch
English
fpZip: Dekompression

Beim Extrahieren aus einem ZIP-Archiv kann die Dekompression für jede Datei un­ab­hängig voneinander durchgeführt werden.

fpZip erzeugt für jede zu dekomprimierende Datei einen asynchronen Vorgang, sobald ihre komprimierten Daten in den Speicher gelesen werden. Der Pseudocode in einer asynchronen Programmiersprache ist wie folgt:

ExtractArchive(archive)
{
  Memory inMemory;
  ReadFile(archive, inMemory);

  Memory outMemory[archive.fileCount];
  for (i = 0; i < archive.fileCount; ++i)
    Decompress(archive.file[i], inMemory, outMemory[i]);
}

Decompress(file, inMemory, outMemory)
{
  Inflate(inMemory, outMemory);
  crc = CRC32(outMemory);
  WriteFile(file, outMemory);
  FileCheck(crc);
}

Somit erhält man folgendes Abhängigkeitsdiagramm:

fpZip