ngen.exe utilizza costantemente CPU


10

Di recente ho installato Windows 7. Questa era un'installazione pulita (cioè non un aggiornamento da un'altra versione di Windows), ma ho installato un sacco di altri programmi. Tutte le applicazioni tradizionali - niente di strano.

Da allora, il mio utilizzo della CPU è stato costantemente intorno al 50%.

Task Manager mi mostra che ngen.exe è il colpevole. Non è un'attività di lunga durata: vedo che ottiene un nuovo PID almeno una volta al secondo, quindi immagino che qualcosa lo stia costantemente attivando.

Lo fa sempre, anche quando non ho applicazioni in esecuzione.

Qualcun altro l'ha visto? Come faccio a sapere cosa sta causando questo?

Risposte:


7

Seguendo il consiglio di Isxek, ho usato Process Explorer per vedere cosa stava succedendo. Ho trovato questo:

inserisci qui la descrizione dell'immagine

I processi che terminano sono evidenziati in rosso; quelli appena iniziati sono verdi. Questo dimostra che ngen.exe termina costantemente e viene riavviato. Dal grafico in alto puoi vedere che corre ogni volta per circa un secondo.

Come dice Jim B, netfxupdate.exe si sta facendo strada attraverso il framework .NET. Il mio andava avanti da diverse settimane, quindi per qualche motivo sembra che si fosse bloccato su qualcosa e non stesse facendo alcun progresso.

Usando regedit, ho trovato la voce che avvia netfxupdate.exe ogni volta che avvio il mio PC:

inserisci qui la descrizione dell'immagine

Sembra che sia bloccato sulle librerie .NET 1.1 per qualche motivo. Sono uno sviluppatore .NET e parte del mio codice funziona su .NET 1.1. Sembra che tutto funzioni correttamente, quindi ho rimosso questa voce dal registro e riavviato la mia macchina.

Sono passati un paio di giorni senza problemi (anche quando si sviluppa su .NET 1.1), quindi sono contento di questa soluzione.


5

NGEN è il generatore di codice nativo per il framework dotnet. verrà sfornato come attività in background fino a quando non saranno stati generati gli assembly nativi


4
Funziona da un paio di settimane, otto ore al giorno, cinque giorni alla settimana. Sicuramente non è normale?
teedyay

5

Il file ngen.exesembra essere parte di Microsoft .NET Framework, secondo ProcessLibrary.com . L'ho cercato su un laptop Windows 7 che sto usando, ma non sono riuscito a trovarlo.

È possibile utilizzare Process Explorer per determinare se si tratta di un file legittimo da Microsoft. Fai clic destro su ngen.exe lì quando lo vedi, scegli Proprietà, quindi fai clic sul pulsante Verifica. Dovresti vedere qualcosa del genere (l'immagine è per svchost.exe):

inserisci qui la descrizione dell'immagine

Se non si registra come verificato, potresti voler provare i consigli forniti qui: Come posso rimuovere spyware, malware, adware, virus, trojan o rootkit dannosi dal mio PC?


1

Cordiali saluti - NetFxUpdate sul mio Windows 2008R2 si è bloccato anche dopo aver installato v1.1,% temp% \ netfxupdate.log mostra:

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 =

e poi (ancora e ancora):

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

Stessa correzione per te, rimuovere la chiave HKLM ... \ Run.


0

Ho affrontato anche questo problema. Ma la risposta di teedyaynon mi ha aiutato. La soluzione che DID aiuta è la disabilitazione degli aggiornamenti automatici. Vedi /superuser//a/502049/201171


0

Ho anche riscontrato il problema in cui NGEN occuperebbe molte risorse della CPU senza una ragione apparente. Ho provato ad applicare alcune correzioni trovate su vari forum, ma senza fortuna.

IL FIX (che ha funzionato per me e non ha molto senso sul perché funzioni): se apri la posizione del file facendo clic con il tasto destro del mouse sul processo ngen, nella directory principale c'è un file di testo chiamato "ngen". Ho rimosso il file e non ho visto ngen per un'intera settimana e il conteggio.

Se qualcuno vuole provarlo e confermare la "correzione", provalo.


0

Eseguo sempre questi comandi dopo una nuova installazione e appena aggiornato:

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

Aspetta che finiscano e non vedrai più ngen.


-1

Dopo aver eliminato la chiave di registro in basso \ HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft.NETFramework \ v2.0.50727 \ NGenService \ Roots NGen costruirà da sola la struttura del registro che "risolve" il problema

fonte

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.