Çoklu İş Parçacığı Üretimi
IronPDF, birden fazla iş parçacığı süreçlerini destekler ve bu örnekte görüldüğü gibi ChromePdfRenderer sınıfı ile PDF belgelerini oluştururken iş parçacığı güvenli PDF oluşturma sağlar. Bu şekilde, her boyutta PDF üretim görevlerini veya toplu PDF üretim görevlerini eşzamanlı olarak yönetebilir ve thread kilitlenmesi gibi sorunlara karşı korunabilirsiniz.
Çoklu Thread ile PDF Üretimi Adımları
Çok iş parçacıklı bir ortamda PDF belgeleri oluşturmanın ilk adımı, yeni bir ChromePdfRenderer örneği oluşturmaktır. Bu, IronPDF'in güçlü rendering motoruna erişim hakkı verir, piksel-mükemmel PDF dökümanları üretebilen. Ardından, htmlStrings adında bir dizi string nesnesi oluşturacağız. Bu liste, Multi-Threaded ortamda PDF dökümanlarına çevrilecek HTML string'leriyle dolu.
Sırası gelen, HTML string'lerimizi eşzamanlı olarak PDF dosyalarına render etmek için eşzamanlı programlamayı kullanmamız gerekiyor. htmlStrings.Select(html => renderer.RenderHtmlAsPdfAsync(html)), HTML string dizimizi yineleyerek her bir bulunan string üzerinde tümünü PDF belgelerine dönüştüren RenderHtmlAsPdfAsync yöntemini, dönüştürücü üzerinden erişerek çağırır. Task.WhenAll(), tüm bireysel RenderHtmlAsPdfAsync çağrıları tamamlandığında bitecek olan tek bir göreve asenkron görevleri biriktirmek için kullanılır. Ardından, yeni bir PdfDocument nesneleri dizisi döndürecektir.
Sonunda, PDF üretimimizin sonuçlarını alacağız. await task, geçerli asenkron yöntemin tüm asenkron PDF dönüştürme görevleri tamamlanana kadar beklemesini sağlar ve sonuçta oluşan PdfDocument nesnelerinin dizisini alır. ToList() daha sonra PdfDocument nesneleri dizisini, PDF belgelerinin daha kolay bir şekilde manipüle edilmesi için pdfList Listesine dönüştürür.

