Mehrfach-Thread-Erzeugung
IronPDF bietet threadsichere PDF-Generierung und unterstützt Multithreading-Prozesse bei der Generierung von PDF-Dokumenten mit der Klasse ChromePdfRenderer, wie in diesem Beispiel gezeigt. Auf diese Weise können Sie PDF-Generierungsaufgaben jeder Größe oder Batch-PDF-Generierungsaufgaben gleichzeitig bearbeiten, ohne Angst vor Problemen wie Thread-Blockierung zu haben.
Schritte zur Multi-Threaded PDF-Generierung
Der erste Schritt bei der Generierung von PDF-Dokumenten in einer Multithread-Umgebung besteht darin, eine neue ChromePdfRenderer-Instanz zu erstellen. Dies gibt uns Zugriff auf IronPDF's leistungsstarke Rendering-Engine, die in der Lage ist, pixelgenaue PDF-Dokumente zu erstellen. Dann erstellen wir eine neue Liste von String-Objekten mit dem Namen htmlStrings . Diese Liste ist voll von den HTML-Strings, aus denen wir in unserer Multi-Threaded-Umgebung PDF-Dokumente generieren werden.
Als nächstes müssen wir asynchrone Programmierung verwenden, um alle unsere HTML-Strings gleichzeitig in PDF-Dateien zu rendern. htmlStrings.Select(html => renderer.RenderHtmlAsPdfAsync(html)) iteriert über unsere Liste von HTML-Zeichenketten und ruft für jede gefundene Zeichenkette die Methode RenderHtmlAsPdfAsync auf, die über den Renderer zugänglich ist, und wandelt sie in PDF-Dokumente um. Task.WhenAll() wird verwendet, um die asynchronen Aufgaben zu einer einzigen Aufgabe zusammenzufassen, die abgeschlossen wird, sobald alle einzelnen RenderHtmlAsPdfAsync-Aufrufe beendet sind. Anschließend wird ein neues Array von PdfDocument-Objekten zurückgegeben.
Schließlich werden wir die Ergebnisse unserer PDF-Generierung abrufen. await task stellt sicher, dass die aktuelle asynchrone Methode wartet, bis alle asynchronen PDF-Rendering-Aufgaben abgeschlossen sind, und ruft das resultierende Array von PdfDocument-Objekten ab. ToList() wandelt dann das Array von PdfDocument Objekten in die pdfList Liste um, um die weitere Bearbeitung der PDF-Dokumente zu vereinfachen.

