修復服務主機:診斷策略服務高 CPU 使用率
已發表: 2021-02-03
您可能知道,有許多活動的後台進程和服務有助於 Windows 的順利運行。 大多數這些後台進程/服務使用最少的 CPU 功率和 RAM。 雖然,有時一個進程可能會出現故障或被破壞並最終使用比平時更多的資源,而為其他前台應用程序留下的資源很少。 診斷策略服務就是這樣一個因在極少數情況下會佔用系統資源而臭名昭著的過程。
診斷策略服務是 Svchost.exe(服務主機)的共享進程之一,負責檢測各種 Windows 組件的問題並對其進行故障排除。 如果可能,該服務會嘗試自動修復任何檢測到的問題,如果沒有,則記錄診斷信息以進行分析。 由於問題的診斷和自動故障排除是無縫體驗的重要功能,因此診斷策略服務已設置為在計算機啟動時自動啟動並在後台保持活動狀態。 它消耗比預期更多的 CPU 功率背後的確切原因尚不清楚,但根據潛在的解決方案,罪魁禍首可能是服務的損壞實例、損壞的系統文件、病毒或惡意軟件攻擊、大型事件日誌文件等。
在本文中,我們解釋了五種不同的方法,可幫助您將診斷策略服務的 CPU 消耗恢復到正常水平。

內容
- 修復服務主機:診斷策略服務高 CPU 使用率
- 診斷策略服務高 CPU 使用率的潛在修復
- 方法一:從任務管理器結束進程
- 方法 2:運行 SFC 和 DISM 掃描
- 方法 3:更新 Windows 並運行性能疑難解答
- 方法 4:清除事件查看器日誌
- 方法 5:禁用診斷策略服務並刪除 SRUDB.dat 文件
修復服務主機:診斷策略服務高 CPU 使用率
診斷策略服務高 CPU 使用率的潛在修復
大多數用戶只需重新啟動診斷策略服務即可解決異常高的磁盤使用率問題。 其他人可能需要執行一些掃描(SFC 和 DISM)來查找損壞的系統文件或運行內置的性能故障排除程序。 更新到最新版本的 Windows 並清除事件查看器日誌也可以解決此問題。 最後,如果似乎沒有任何效果,用戶可以選擇禁用該服務。 但是,禁用診斷策略服務意味著 Windows 將不再執行自動診斷和解決錯誤。
方法一:從任務管理器結束進程
如果某件事提示了它的損壞實例,則一個進程可能會佔用額外的系統資源。 在這種情況下,您可以嘗試手動終止進程(此處為診斷策略服務),然後讓它自動重新啟動。 所有這些都可以通過 Windows 任務管理器(使用 Windows 任務管理器終止資源密集型進程)來實現。
1.右鍵單擊開始菜單按鈕並選擇任務管理器。

2. 單擊更多詳細信息以展開任務管理器並查看所有當前活動的進程和服務。

3.找到服務主機:Windows進程下的診斷策略服務。 右鍵單擊它並選擇End task 。 (您也可以通過左鍵單擊選擇服務,然後單擊右下角的結束任務按鈕。)

診斷策略服務將自動重新啟動,但如果沒有,只需重新啟動計算機並檢查問題是否仍然存在。
方法 2:運行 SFC 和 DISM 掃描
最近的 Windows 系統更新甚至防病毒攻擊可能已損壞某些系統文件,導致診斷策略服務的 CPU 使用率很高。 幸運的是,Windows 具有內置實用程序來掃描和修復損壞/丟失的系統文件。 第一個是系統文件檢查器實用程序,顧名思義,它檢查所有系統文件的完整性並用緩存副本替換損壞的文件。 如果 SFC 掃描無法修復損壞的系統文件,用戶可以使用部署映像服務和管理 (DISM) 命令行工具。
1. 在 Windows 搜索欄中鍵入命令提示符,並在搜索結果到達時單擊右側面板中的以管理員身份運行。

2. 在命令提示符窗口中輸入sfc /scannow並回車執行。 掃描可能需要一段時間,所以請坐下來,在驗證過程達到 100% 之前不要關閉窗口。

3. 完成SFC 掃描後,執行以下DISM 命令。 同樣,請耐心等待掃描和恢復過程完成,然後再退出應用程序。 完成後重新啟動計算機。
DISM /在線 /Cleanup-Image /RestoreHealth

另請閱讀:如何通過系統空閒進程修復高 CPU 使用率
方法 3:更新 Windows 並運行性能疑難解答
如前所述,最近的 Windows 更新也可能是診斷策略服務異常行為的罪魁禍首。 您可以嘗試回滾到以前的更新或查找 Microsoft 推送的任何新更新以糾正錯誤。 如果您在更新 Windows 時遇到任何問題,請運行內置的更新疑難解答。
除了更新 Windows,還可以運行系統性能疑難解答來掃描任何性能問題並自動修復它們。
1. 同時按Windows 鍵 + I啟動系統設置,然後單擊更新和安全設置。

2. 在 Windows 更新選項卡上,單擊檢查更新。 該應用程序將開始尋找任何可用的更新並自動開始下載它們。 安裝新更新後重新啟動計算機。

3. 檢查診斷策略服務是否仍在佔用您的系統資源,如果是,則運行更新疑難解答。 再次打開更新和安全設置並移至疑難解答選項卡,然後單擊其他疑難解答。

4. 在啟動並運行部分下,單擊Windows 更新以查看可用選項,然後單擊隨後的運行疑難解答按鈕。 按照屏幕上的說明完成故障排除過程。
要運行系統性能疑難解答:
1. 在開始搜索欄中鍵入控制面板,然後按Enter 鍵打開它。


2. 單擊故障排除。

3. 在系統和安全下,單擊運行維護任務超鏈接。

4. 在以下窗口中,單擊高級並選中自動應用修復旁邊的框。 單擊下一步以運行疑難解答。

另請閱讀:修復桌面窗口管理器高 CPU (DWM.exe)
方法 4:清除事件查看器日誌
事件查看器程序維護所有應用程序和系統錯誤消息、警告等的記錄。這些事件日誌可以累積到相當大的大小並提示服務主機進程的問題。 只需清除日誌即可幫助解決診斷策略服務的問題。 我們建議您定期清除事件查看器日誌以避免將來出現任何問題。
1. 按Windows 鍵 + R啟動運行命令框,鍵入eventvwr.msc並單擊確定以打開事件查看器應用程序。

2. 在左側窗格中,通過單擊小箭頭展開Windows 日誌文件夾,然後從隨後的列表中選擇應用程序。

3. 首先,通過單擊右側窗格中的Save All Events As... 保存當前事件日誌(默認情況下,文件將以 .evtx 格式保存,以 .text 或 .csv 格式保存另一個副本。)並保存後,單擊清除日誌...選項。 在隨後的彈出窗口中,再次單擊清除。

4. 對安全、設置和系統重複上述步驟。 清除所有事件日誌後重新啟動計算機。
方法 5:禁用診斷策略服務並刪除 SRUDB.dat 文件
最終,如果上述方法都無法修復 Service Host: Diagnostic Policy Service High CPU 使用率問題,那麼您可以選擇完全禁用它。 您可以通過四種不同的方式禁用該服務,最簡單的一種是通過服務應用程序。 除了禁用之外,我們還將刪除 SRUDB.dat 文件,該文件存儲有關計算機的各種信息(應用程序電池使用情況、應用程序從硬盤驅動器寫入和讀取的字節數、診斷等)。 該文件由診斷策略服務每隔幾秒鐘創建和修改一次,這會導致磁盤使用率很高。
1. 在運行命令框中鍵入services.msc ,然後單擊確定打開服務應用程序。 (有 8 種方法可以打開 Windows 服務管理器,因此請隨意選擇。)

2. 確保所有服務都按字母順序排序(單擊名稱列標題這樣做)並查找診斷策略服務,然後右鍵單擊並選擇屬性。

3. 在常規選項卡下,單擊停止按鈕終止服務。
4. 現在,展開啟動類型下拉菜單並選擇禁用。

5. 單擊應用按鈕保存更改,然後單擊確定關閉屬性窗口。

6.接下來,雙擊桌面上的文件資源管理器快捷方式圖標打開相同的,然後前往以下地址:
C:\WINDOWS\System32\sru
7. 找到SRUDB.dat文件,右鍵單擊它,然後選擇Delete 。 確認可能出現的任何彈出窗口。

如果您未能成功從服務管理器應用程序禁用診斷策略服務,請嘗試其他三種方法之一。
1.從系統配置:打開系統配置 > 服務選項卡 >取消選中/取消選中診斷策略服務。

2.從註冊表編輯器:打開註冊表編輯器並前往:
計算機\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DPS
3. 雙擊右窗格中的開始,然後將數值數據更改為4 。

4.重新啟動計算機,Windows 將自動重新創建 SRDUB.dat 文件。 診斷策略服務不應再處於活動狀態,因此會導致任何性能問題。
受到推崇的:
- 修復服務主機:本地系統 (svchost.exe) 高 CPU 和磁盤使用率
- 修復服務主機的高 CPU 使用率:本地系統
- 如何使用 CMD 修復或修復損壞的硬盤?
- 修復 Windows Audio Device Graph Isolation 高 CPU 使用率
我們希望本指南對您有所幫助,並且您能夠修復 Windows 10 計算機上的服務主機:診斷策略服務 CPU 使用率高的問題。 您可以嘗試防止該問題在未來再次發生的幾件事是更新所有計算機驅動程序並執行定期防病毒掃描。 您還應該卸載已達到其目的且不再需要的第三方應用程序。 如需有關診斷政策服務的任何幫助,請在下面的評論部分與我們聯繫。
