Generación multihilo
IronPDF proporciona generación de PDF segura para hilos y ofrece soporte para procesos de multi-hilos cuando se trata de generar documentos PDF con la clase ChromePdfRenderer como se ve en este ejemplo. De esta manera, puede manejar tareas de generación de PDF de cualquier tamaño o tareas de generación de PDF por lotes de manera concurrente sin el temor de enfrentarse a problemas como el bloqueo de subprocesos.
Pasos para la generación de PDF multihilo
El primer paso para generar documentos PDF en un entorno de multi-hilos es crear una nueva instancia de ChromePdfRenderer. Esto nos da acceso al potente motor de renderizado de IronPDF, capaz de producir documentos PDF de calidad perfecta de píxeles. Luego, crearemos un nuevo List<string> de objetos de cadena, llamado htmlStrings. Esta lista está llena de las cadenas HTML de las que generaremos documentos PDF en nuestro entorno Multihilo.
A continuación, necesitamos usar programación asincrónica para renderizar todas nuestras cadenas HTML en archivos PDF de manera concurrente. htmlStrings.Select(html => renderer.RenderHtmlAsPdfAsync(html)) itera sobre nuestra lista de cadenas HTML y llama al método RenderHtmlAsPdfAsync, al que se accede a través del renderer, en cada cadena encontrada, convirtiéndolas en documentos PDF. Task.WhenAll() se usa para acumular las tareas asíncronas en una sola tarea que se completará una vez que todas las llamadas individuales de RenderHtmlAsPdfAsync hayan terminado. Luego, devolverá un nuevo arreglo de objetos PdfDocument.
Finalmente, obtendremos los resultados de nuestra generación de PDF. await task asegura que el método asíncrono actual espere hasta que todas las tareas de renderizado PDF asíncronas estén completas y recupera el arreglo resultante de objetos PdfDocument. ToList() luego convierte el arreglo de objetos PdfDocument en la lista pdfList para una manipulación más sencilla de los documentos PDF.

