ngen.exe selalu menggunakan CPU

10

Saya baru-baru ini menginstal Windows 7. Ini adalah instalasi yang bersih (yaitu bukan upgrade dari versi Windows lain), tetapi saya menginstal banyak program lain. Semua aplikasi utama - tidak ada yang aneh.

Sejak itu, penggunaan CPU saya secara konstan sekitar 50%.

Task Manager menunjukkan kepada saya bahwa ngen.exe adalah biang keladinya. Ini bukan tugas yang berjalan lama: Saya bisa melihat bahwa itu mendapat PID baru setidaknya sekali dalam satu detik, jadi saya kira ada sesuatu yang terus memicu itu.

Itu melakukannya setiap saat, bahkan ketika saya tidak memiliki aplikasi yang berjalan.

Adakah yang melihat ini? Bagaimana saya mengetahui apa yang menyebabkan ini?

Teedyay
sumber

Jawaban:

7

Mengikuti saran Isxek, saya menggunakan Process Explorer untuk melihat apa yang terjadi. Aku menemukan ini:

masukkan deskripsi gambar di sini

Proses yang berakhir disorot merah; yang baru mulai berwarna hijau. Ini menunjukkan bahwa ngen.exe selalu berakhir dan dimulai ulang. Dari grafik di atas Anda dapat melihatnya berjalan sekitar satu detik setiap kali.

Seperti yang dikatakan Jim B, netfxupdate.exe bekerja dengan baik melalui framework .NET. Milik saya telah berjalan selama beberapa minggu, jadi untuk beberapa alasan sepertinya terjebak pada sesuatu dan tidak membuat kemajuan.

Menggunakan regedit, saya menemukan entri yang memulai netfxupdate.exe setiap kali saya memulai PC saya:

masukkan deskripsi gambar di sini

Sepertinya macet di perpustakaan. NET 1.1 untuk beberapa alasan. Saya seorang pengembang .NET dan beberapa kode saya berjalan di .NET 1.1. Tampaknya semuanya berfungsi dengan baik, jadi saya menghapus entri ini dari registri dan mem-boot ulang komputer saya.

Sudah beberapa hari sekarang tanpa masalah (bahkan ketika berkembang melawan. NET 1.1), jadi saya senang dengan solusi ini.

Teedyay
sumber
5

NGEN adalah generator kode asli untuk kerangka kerja dotnet. itu akan berputar sebagai tugas latar belakang sampai majelis asli telah dihasilkan

Jim B
sumber
4
Sudah berjalan selama beberapa minggu sekarang - delapan jam sehari, lima hari seminggu. Tentunya itu tidak normal?
teedyay
5

File tersebut ngen.exetampaknya merupakan bagian dari Microsoft .NET Framework, menurut ProcessLibrary.com . Saya melakukan pencarian di laptop Windows 7 yang saya gunakan, tetapi saya tidak dapat menemukannya.

Anda bisa menggunakan Process Explorer untuk menentukan apakah itu file yang sah dari Microsoft. Klik kanan pada ngen.exe di sana ketika Anda melihatnya, pilih Properti, lalu klik tombol Verifikasi. Anda akan melihat sesuatu seperti ini (gambar untuk svchost.exe):

masukkan deskripsi gambar di sini

Jika tidak terdaftar sebagai terverifikasi, Anda mungkin ingin mencoba saran yang diberikan di sini: Bagaimana saya bisa menghapus spyware, malware, adware, virus, trojan atau rootkit dari PC saya?

Isxek
sumber
1

FYI - NetFxUpdate pada Windows 2008R2 saya macet juga setelah saya menginstal v1.1,% temp% \ netfxupdate.log menunjukkan:

START: invocation ID = 1; version = v1.1.4322; params = 
REGWRITE: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce NetFxUpdate_v1.1.4322="C:\Windows\Microsoft.NET\Framework\v1.1.4322\netfxupdate.exe" 0 v1.1.4322 GAC + NI NID
REGDELETE: HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run NetFxUpdate_v1.1.4322
INVOKE: "C:\Windows\Microsoft.NET\Framework\v1.1.4322\netfxupdate.exe" 2 v1.1.4322 NI NID
START: invocation ID = 2; version = v1.1.4322; params =

dan kemudian (berulang kali):

INVOKE: "C:\Windows\Microsoft.NET\Framework\v1.1.4322\ngen.exe" /nologo /silent "C:\Windows\Microsoft.NET\Framework\v1.1.4322\System.dll"
RETURN: -1

Perbaikan yang sama seperti Anda, hapus HKLM ... \ Run key.

Hornblower409
sumber
0

Saya juga menghadapi masalah ini. Tetapi jawaban teedyaytidak membantu saya. Solusi yang DID bantu adalah Menonaktifkan Pembaruan Otomatis. Lihat /superuser//a/502049/201171

white.zaz
sumber
0

Saya juga mengalami masalah di mana NGEN akan menghabiskan banyak sumber daya CPU tanpa alasan yang jelas. Saya mencoba menerapkan beberapa perbaikan yang ditemukan di berbagai forum tetapi tidak berhasil.

THE FIX (yang bekerja untuk saya dan tidak masuk akal mengapa itu bekerja): jika Anda membuka lokasi file dengan mengklik kanan pada proses ngen, ada file teks bernama "ngen" di direktori utama. Saya menghapus file dan belum melihat ngen selama satu minggu penuh dan terus bertambah.

Jika ada yang mau mencoba ini dan konfirmasikan "perbaikan".

GoodSimeritan
sumber
0

Saya selalu menjalankan perintah ini setelah instalasi baru dan baru diperbarui:

C:\Windows\Microsoft.NET\Framework\v4.0.30319\ngen.exe executequeueditems
C:\Windows\Microsoft.NET\Framework\v2.0.50727\ngen.exe executequeueditems

Tunggu hingga selesai dan Anda tidak akan melihat ngen lagi.

Futur'Fusionneur
sumber
-1

Setelah menghapus kunci registri di bawah ini \ HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft.NETFramework \ v2.0.50727 \ NGenService \ Roots NGen akan membangun struktur registri dengan sendirinya yang “memperbaiki” masalah

Sumber

Александр Митюшов
sumber