Génération multi-thread
IronPDF fournit une génération de PDF sécurisée par thread et offre un support pour les processus multi-thread pour générer des documents PDF avec la classe ChromePdfRenderer comme on le voit dans cet exemple. De cette façon, vous pouvez gérer des tâches de génération de PDF de toute taille, ou des tâches de génération de PDF par lots, simultanément sans craindre de rencontrer des problèmes tels que le blocage de threads.
Étapes pour la génération de PDF multi-threadée
La première étape pour générer des documents PDF dans un environnement multi-threaded est de créer une nouvelle instance ChromePdfRenderer. Cela nous donne accès au puissant moteur de rendu d'IronPDF, capable de produire des documents PDF parfaits au pixel près. Ensuite, nous créerons une nouvelle List<string> d'objets string, appelée htmlStrings. Cette liste est remplie des chaînes HTML à partir desquelles nous générerons des documents PDF dans notre environnement multi-threadé.
Ensuite, nous devons utiliser la programmation asynchrone pour rendre simultanément toutes nos chaînes HTML en fichiers PDF. htmlStrings.Select(html => renderer.RenderHtmlAsPdfAsync(html)) itère sur notre liste de chaînes HTML et appelle la méthode RenderHtmlAsPdfAsync, accessible via renderer, sur chaque chaîne trouvée, les convertissant en documents PDF. Task.WhenAll() est utilisé pour accumuler les tâches asynchrones en une seule tâche qui sera complétée une fois que tous les appels RenderHtmlAsPdfAsync individuels sont terminés. Ensuite, il retournera un nouveau tableau d'objets PdfDocument.
Enfin, nous récupérerons les résultats de notre génération de PDF. await task garantit que la méthode asynchrone actuelle attend que toutes les tâches de rendu PDF asynchrones soient complètes et récupère le tableau résultant d'objets PdfDocument. ToList() convertit ensuite le tableau d'objets PdfDocument en une liste pdfList pour une manipulation plus facile des documents PDF.

