マルチスレッド生成
IronPDFはスレッドセーフなPDF生成機能を提供し、この例に見られるように、ChromePdfRendererクラスを使用してPDFドキュメントを生成する際のマルチスレッド処理をサポートしています。 このようにして、スレッドブロッキングなどの問題を心配することなく、任意のサイズのPDF生成タスクやバッチPDF生成タスクを同時に処理することができます。
マルチスレッドPDF生成の手順
マルチスレッド環境でPDFドキュメントを生成する最初のステップは、新しい ChromePdfRenderer インスタンスを作成することです。 これにより、ピクセルパーフェクトなPDFドキュメントを生成する能力を持つIronPDFの強力なレンダリングエンジンにアクセスできます。 次に、htmlStringsを作成します。 このリストには、私たちのマルチスレッド環境でPDFドキュメントを生成するHTML文字列が満載されています。
次に、非同期プログラミングを使用して、すべてのHTML文字列を同時にPDFファイルにレンダリングする必要があります。 htmlStrings.Select(html => renderer.RenderHtmlAsPdfAsync(html)) は、HTML 文字列のリストを反復処理し、見つかった各文字列に対して RenderHtmlAsPdfAsync メソッド(renderer を通じてアクセス)を呼び出し、それらを PDF 文書に変換します。 Task.WhenAll() は、個々の RenderHtmlAsPdfAsync 呼び出しがすべて完了した時点で実行される単一のタスクとして、非同期タスクをまとめて処理するために使用されます。 その後、PdfDocumentオブジェクトの新しい配列が返されます。
最後に、PDF生成の結果を取得します。 await task は、現在の非同期メソッドがすべての非同期 PDF レンダリングタスクが完了するまで待機し、結果として得られる PdfDocument オブジェクトの配列を取得することを保証します。 ToList() は、PDF ドキュメントのさらなる操作を容易にするため、PdfDocument オブジェクトの配列を pdfList List に変換します。

