Parallele bzip2-Komprimierung
Verwendung mehrerer CPU-Kerne für die Bzip2-Komprimierung
BZIP2 komprimiert Daten, indem es sie in Blöcke aufteilt und jeden Block unabhängig verarbeitet. Aspose.ZIP bietet eine Funktion, die es Ihnen ermöglicht, mehrere CPU-Kerne zur parallelen Verarbeitung dieser Blöcke zu nutzen, wodurch der Komprimierungsprozess für große Dateien erheblich beschleunigt wird.
Standardmäßig erfolgt die Komprimierung Single-Threaded, aber mit Aspose.ZIP können Sie die parallele Verarbeitung aktivieren, indem Sie die Eigenschaft „CompressionThreads“ anpassen. Sie müssen lediglich die Anzahl der Threads angeben, die Sie verwenden möchten. Wenn Sie „CompressionThreads“ auf einen Wert größer als eins setzen, nutzt Bzip2 die angegebene Anzahl von CPU-Kernen.
Warum Multi-Core-Komprimierung verwenden?
Die Nutzung aller verfügbaren CPU-Kerne ist besonders vorteilhaft, wenn mit großen Datenmengen gearbeitet wird oder die Leistung im Vordergrund steht. Dieser Ansatz reduziert den Zeitaufwand für die Komprimierung großer Dateien, indem die Arbeitslast auf mehrere Kerne verteilt wird.
Im folgenden Beispiel wird die Option CompressionThreads so eingestellt, dass alle verfügbaren Kerne auf der Maschine verwendet werden, indem der Eigenschaft „CompressionThreads“ „Environment.ProcessorCount“ zugewiesen wird.
1 using (Bzip2Archive archive = new Bzip2Archive())
2 {
3 archive.SetSource("data.bin");
4 archive.Save("result.bz2", new Bzip2SaveOptions() { CompressionThreads = Environment.ProcessorCount });
5 }