Во время работы за компьютером вдруг наблюдаем резкое снижение производительности системы, программы долго реагируют на клики пользователя, медленно открываются и зависают, а в Диспетчере задач наблюдаем, как PresentationFontCache.exe сильно грузит процессор. Иногда нагрузка на ЦП может увеличится почти 100%. Даже когда завершаем процесс в Диспетчере задач, он возвращается через некоторое время или после перезагрузки компьютера. Иногда может значительно замедлить время загрузки системы.
Что это за процесс
PresentationFontCache.exe связан с платформой .Net Framework. Основная задача процесса – загрузить глифы шрифтов в память, чтобы все приложения WPF (Windows Presentation Foundation) смогли их использовать.
Таким образом, когда открываете приложение Windows Presentation Foundation, также подгружается PresentationFontCache.exe, который предоставляет доступ к информации о шрифтах для WPF. Поэтому, когда процесс использует много ресурсов, то это связано с повреждением шрифта в кэше. Информация о глифе в памяти может быть повреждена или не отвечать, что приводит к неправильному поведению PresentationFontCache.exe и застреванию в цикле перезапуска. Поэтому, он начинает сильно грузить процессор, что приводит к замедлению системы.
Есть несколько эффективных способов снизить загруженность процессора.
Удаление файлов FontCache*.dat
Во многих случаях удаление файлов Font*.dat позволяет устранить высокую нагрузку на процессор, вызываемую PresentationFontCache.exe. Эти файлы содержат информацию, на которую ссылаются приложения. Возможно, один из них поврежден и вызывает проблему.
Разверните на экране окно «Выполнить» клавишами Win + R, наберите путь к указанному каталогу и нажмите на Enter:
C:\Windows\ServiceProfiles\LocalService\AppData\Local\
Кликните правой кнопкой мыши на FontCache*.dat и выберите «Удалить».
После этого перезагрузите ПК и проверьте, насколько процесс грузит ЦП.
Если доступ к папке заблокирован, выполните следующие шаги. Нажмите Win + R, впишите control panel и подтвердите выполнение на Enter. Перейдите в раздел «Параметры папок» (или Параметры проводника).
Откройте вкладку Вид, отметьте пункт «Показать скрытые файлы, папки и диски» в подразделе «Дополнительные параметры». Для сохранения кликните на «Применить». Попробуйте еще раз перейти к папке.
Если файлы кэша не можете удалить, то остановите в Диспетчере задач процесс PresentationFontCache.exe. Нажмите одновременно CTRL + SHIFT + Esc, кликните правой кнопкой мыши на нем и выберите «Снять задачу». Теперь попробуйте повторить удаление.
Остановка службы кэша шрифтов
Как отмечалось в начале, PresentationFontCache.exe активируется после запуска приложений Windows Presentation Foundation. Поэтому, если не пользуетесь WPF, то отключение службы решит проблему с высокой загруженностью процессора. Если вам не известно их назначение, то приложения WPF — это те, которые созданы в Visual Studio для рабочего стола.
Откройте диалоговое окно «Выполнить» (Win + R), впишите команду services.msc и подтвердите запуск на Enter.
В перечне найдите службу кэша шрифтов Windows Presentation Foundation и разверните ее двойным щелчком мыши.
Установите значение «Отключена» из раскрывающегося меню Типа запуска. Для сохранения изменений, нажмите на «Применить».
После отключения службы, нагрузка на процессор должна снизиться.
Восстановление .Net Framework
Если PresentationFontCache.exe продолжает грузить систему, то попробуйте переустановить Net Framework
Разверните окно «Выполнить» нажатием на Win + R, наберите appwiz.cpl для входа в раздел «Удаления или Изменения программ».
В перечне найдите программу Microsoft .Net Framework, щелкните на ней правой кнопкой мыши и выберите «Изменить/Удалить».
Затем отметьте вариант «Восстановить исходное состояние…» и кликните «Далее». Следуйте запросам системы на экране до завершения восстановления.
Повторите эти шаги для остальных версий из списка. После этого процесс не должен грузить ресурсы процессора.
Инженер-программист