多線程生成
IronPDF提供線程安全的 PDF 生成,並且在使用 ChromePdfRenderer 類別生成 PDF 文件時,支援多執行緒進程,如本範例所示。 這樣,您可以同時處理任意大小的 PDF 生成任務或批量生成 PDF 任務,而不用擔心遇到線程阻塞等問題。
多線程 PDF 生成步驟
在多執行緒環境下產生 PDF 文件的第一步是建立一個新的 ChromePdfRenderer 實例。 這使我們能夠使用 IronPDF 強大的渲染引擎,該引擎能夠生成像素級完美的 PDF 文件。 然後,我們將建立一個新的字串物件列表,名為htmlStrings 。 該清單包含了我們將在多執行緒環境中產生 PDF 文件所需的 HTML 字串。
接下來,我們需要使用非同步編程,將所有 HTML 字串並發渲染成 PDF 檔案。 htmlStrings.Select(html => renderer.RenderHtmlAsPdfAsync(html)) 遍歷我們的 HTML 字串列表,並對找到的每個字串呼叫 RenderHtmlAsPdfAsync 方法(透過渲染器存取),將它們轉換為 PDF 文件。 Task.WhenAll() 用於將非同步任務累積到單獨的任務中,該任務將在所有單獨的 RenderHtmlAsPdfAsync 呼叫完成後完成。 然後,它將傳回一個新的 PdfDocument 物件陣列。
最後,我們將取得 PDF 產生結果。 await task 確保目前非同步方法等待所有非同步 PDF 渲染任務完成,並擷取結果陣列 PdfDocument 物件。 然後,將物件數組轉換為列表,以便更輕鬆地進一步操作 PDF 文件。

