Dot-Net
如何殺死 mscorsvw.exe
mscorsvw.exe(預編譯程序集的 .NET 優化)佔用了我的 CPU 的很大一部分 - 50-100%。
這篇文章(和許多其他文章)說
ngen.exe 執行queueditems
從命令行應該殺死它。對我來說,該命令只是掛起。有沒有更好的方法來殺死這個過程?
我沒有嘗試重新啟動。在過去的幾天裡,我不止一次看到我的 CPU 使用率飆升,我懷疑這是我的問題;我想知道如何殺死它。
嘗試
ngen queue status希望不僅僅是“我在跑步”,還展示了它試圖編譯的內容。該
ngen queue stop命令將停止服務。當安裝程序部署程序集並要求服務使用
ngen install. 顯然你的機器上有一個壞的,我猜它一次又一次地失敗來編譯一個程序集。檢查 Windows 事件日誌以獲取有關此的麵包屑。解除安裝執行此操作的程序。
這篇文章(和許多其他文章)說
> > ngen.exe 執行queueditems > > >
從命令行應該殺死它。對我來說,該命令只是掛起。有沒有更好的 > 方法來殺死這個過程?
沒有; 它不會殺死它。相反,它故意讓它變得更糟。而不是涓涓細流的後台編譯(這樣你通常不會注意到它),它會一次處理所有排隊的項目。這需要一些時間才能完成。它不會掛起,它會非常努力地工作。當它完成時,它就完成了,將沒有更多的東西需要後台編譯。
請注意,最近的升級(很可能)已添加後台編譯作業(您可能安裝了服務包)。Windows 通過使用 .NET JIT 編譯器對所有託管程序集進行 AOT 編譯來幫您一個忙,該編譯器了解您的確切硬體和處理器類型,因此它將發出最優化的程式碼。通過這種方式,.NET 確保軟體在未來執行得更快,代價是現在編譯您的程序集
在您間接連結到您自己的眾多資源中,請閱讀以下資源,例如:
- <http://techdows.com/2010/08/what-is-mscorsvw-exe-how-to-disable-it.html>