Quantcast
Channel: ‫فید مطالب .NET Tips
Viewing all articles
Browse latest Browse all 2016

‫استفاده از کتابخانه DotNetZip و CPUهای چند هسته‌ای

$
0
0
هرچند از دات نت 4 و نیم به بعد، الگوریتم Zip به صورت توکارپشتیبانی می‌شود، اما برای نگارش‌های پایین‌تر، کتابخانه DotNetZipجزو پرکاربردترین‌‌ها در این زمینه است.
از همین کتابخانه مدتی در یک سرور معمولی بدون مشکل استفاده کرده بودم تا اینکه پس از ارتقاء به سرور جدید با خراب بودن فایل‌های Zip حاصل مواجه شدم. پس از بررسی مشخص شدکه این کتابخانه با CPUهای چند هسته‌ای مشکل دارد و باید این نوع پردازش موازی را در آن خاموش کرد:
using (var zf = new ZipFile())
{
   zf.UseUnicodeAsNecessary = true;
   zf.ParallelDeflateThreshold = -1;
   zf.Comment = "….";
   zf.AddFile(path, "programName");
   zf.Save(whereToSave);
}
همانطور که مشاهده می‌کنید، برای غیرفعال سازی پردازش موازی، فقط کافی است پارامتر ParallelDeflateThreshold با منهای یک مقدار دهی شود.
همچنین اگر نام فایل‌های شما فارسی است نیاز است UseUnicodeAsNecessary نیز به true تنظیم گردد.

در کل گاهی از اوقات همین نکات کوتاه می‌توانند از صدمات جدی در آینده جلوگیری کنند. خصوصا اگر از این محصول جهت تهیه پشتیبان استفاده شده باشد.

Viewing all articles
Browse latest Browse all 2016


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>