Generowanie wielowątkówe
IronPDF zapewnia generowanie plików PDF w sposób bezpieczny dla wątków i oferuje obsługę procesów wielowątkowych w zakresie generowania dokumentów PDF za pomocą klasy ChromePdfRenderer, jak widać na tym przykładzie. W ten sposob możesz obsługiwac zadania generowania PDF dowolnej wielkosci lub zbiorowe zadania generowania PDF jednoczesnie, bez obawy o problemy takie jak blokowanie wątków.
Kroki do wielowątkówego generowania PDF
Pierwszym krokiem w generowaniu dokumentów PDF w środowisku wielowątkowym jest utworzenie nowej instancji ChromePdfRenderer. To daje nam dostep do mocnego silnika renderowania IronPDF, zdolnego do tworzenia perfekcyjnych dokumentów PDF. Następnie utworzymy nowy List<string> obiektów typu string, o nazwie htmlStrings. Ta lista pełna jest ciagow HTML, z ktorych będziemy generować dokumenty PDF w naszym środowisku wielowątkówym.
Następnie musimy uzyc programowania asynchronicznego, aby jednoczesnie renderować wszystkie nasze ciagi HTML do plików PDF. htmlStrings.Select(html => renderer.RenderHtmlAsPdfAsync(html)) iteruje po naszej liście ciągów HTML i wywołuje metodę RenderHtmlAsPdfAsync, dostępną poprzez renderer, dla każdego znalezionego ciągu, konwertując je na dokumenty PDF. Task.WhenAll() służy do gromadzenia zadań asynchronicznych w jedno zadanie, które zostanie zakończone po zakończeniu wszystkich poszczególnych wywołań RenderHtmlAsPdfAsync. Następnie zwróci nową tablicę obiektów PdfDocument.
Na koncu odzyskamy wyniki naszego generowania PDF. await task zapewnia, że bieżąca metoda asynchroniczna czeka, aż wszystkie zadania asynchronicznego renderowania plików PDF zostaną zakończone, a następnie pobiera wynikową tablicę obiektów PdfDocument. ToList() następnie konwertuje tablicę obiektów PdfDocument na listę pdfList w celu ułatwienia dalszej manipulacji dokumentami PDF.

