تاثیر تعداد فونت‌های نصب شده در سیستم بر روی سرعت بارگذاری اولیه برنامه‌ها
اندازه‌ی قلم متن
تخمین مدت زمان مطالعه‌ی مطلب: دو دقیقه

مدتی بود که سرعت آغاز ویژوال استودیو و همچنین تمام برنامه‌های دات نتی موجود، به نحو عجیبی کاهش پیدا کرده بودند. آغاز ویژوال استودیو گاهی تا 3 دقیقه هم طول می‌کشید. تا اینکه آغاز یک برنامه ساده‌ی دات نتی را توسط برنامه‌ی معروف Procmon بررسی کردم:


بله. همانطور که مشاهده می‌کنید، چون تعداد فونت‌های نصب شده‌ی بر روی سیستم من بیش از اندازه است (1800 فونت)، این مشکل رخ می‌دهد. هر بار آغاز برنامه‌های دات نت، به همراه بررسی تمام فونت‌های نصب شده‌ی بر روی سیستم هم هست و اگر تعداد آن‌ها زیاد باشد، شاید چند دقیقه‌ای این بررسی طول بکشد.

راه حل‌ها

الف) حذف فونت‌های اضافی سیستم
این مورد به طور قطع بر روی سایر برنامه‌های غیردات نتی هم تاثیر مثبت خواهد گذاشت. برای نمونه، این مورد بارگذاری فونت‌ها، در مرورگرها هم صادق است. به علاوه مصرف RAM سیستم را هم کاهش خواهد داد.
برای حذف فونت‌های اضافی:
- ابتدا به مسیر C:\Windows\Fonts مراجعه کنید. در لیست فونت‌ها، ابتدا ctrl+a و سپس delete. بله! حذف تمام فونت‌ها، تا جایی که ممکن است.
- در ادامه ویندوز به صورت توکار، قابلیت بازگشت به لیست ابتدایی سیستمی خود را دارد (جهت ترمیم مواردی که نباید حذف می‌شدند). برای این منظور باید مراحل ذیل را طی کنید:
 Start > Control Panel -> Appearance and Personalization -> Fonts -> Font Settings -> Restore Default Font Settings
و یا مراجعه‌ی مستقیم به پوشه‌ی C:\Windows\Fonts نیز معادل طی مسیر فوق است:



با کلیک بر روی دکمه‌ی «Restore Default Font Settings» قلم‌های اصلی ویندوز مجددا نصب خواهند شد و سیستم به حالت اول باز می‌گردد.


ب) تنظیم سرویس Font Cache ویندوز
سرویس ویژه‌ای به نام «Windows Presentation Foundation Font Cache 3.0.0.0» در ویندوزهایی که دات نت فریم ورک بر روی آن‌ها نصب است، وجود دارد:


کار آن کش کردن و به اشتراک گذاشتن اطلاعات قلم‌های نصب شده‌ی بر روی سیستم، بین تمام برنامه‌های WPF در حال اجرا است.
حالت آغاز این سرویس بر روی manual است. به این معنا که تا یک برنامه‌ی WPF ایی بر روی سیستم اجرا نشود، این سرویس فعال نخواهد شد. می‌توان این حالت آغاز را بر روی automatic قرار داد تا به تمام برنامه‌های WPF سیستم به صورت یکسانی، پیش از اجرای آن‌ها اعمال شود.
این تغییر توسط مایکروسافت هم توصیه شده‌است: «12. Understand the PresentationFontCache service »


نتیجه گیری
اگر آغاز برنامه‌ی دات نتی شما آنچنان سریع نیست، الزاما مشکل از Entity framework نیست. چه تعدادی فونت را نصب کرده‌اید؟!
  • #
    ‫۸ سال و ۵ ماه قبل، دوشنبه ۳۰ فروردین ۱۳۹۵، ساعت ۱۶:۲۱
    Resharper هم نقش بسزایی در کند کردن ویژوال استودیو داره. در اینجا هم راه حلهایی برای افزایش سرعت ویژوال استودیو در هنگام نصب Resharper ارائه شده که میتونه مفید باشه.
    • #
      ‫۸ سال و ۵ ماه قبل، سه‌شنبه ۳۱ فروردین ۱۳۹۵، ساعت ۰۲:۱۲
      فکر میکنم هارد ssd کمک بسیاری در بارگذاری اولیه ویژوال استدیو بکنه... چون هنگام باز شدن پروژه میزان استفاده از دیسک در تسک منیجر به 100% میرسه 
      • #
        ‫۸ سال و ۵ ماه قبل، سه‌شنبه ۳۱ فروردین ۱۳۹۵، ساعت ۱۸:۰۴
        اگر SSD نبود RamDisk هم تاثیر زیادی داره. تنظیم Resharper و IIS express برای استفاده از اون