Windows ustavi napako THREAD_STUCK_IN_DEVICE_DRIVER

Sporočilo o napaki THREAD_STUCK_IN_DEVICE_DRIVER se pojavi, ko je gonilnik naprave obtičal v neomejeni zanki in čakal, da se pridružena strojna oprema ne uporabi.

Ta težava je pogosto posledica težave s strojno opremo ali težave z gonilnikom naprave, ki poskuša programirati strojno opremo. Ta napaka se pogosteje pojavlja pri okvarjeni grafični kartici ali gonilniku grafične kartice.

Rešitve za končne uporabnike

Če ste končni uporabnik (ki ne razvija gonilnika) in naletite na to napako, preverite, ali so za vašo napravo posodobljeni gonilniki. Če ni posodobljenih gonilnikov in ni bila dodana nova strojna oprema, je varno predpostaviti, da strojna oprema v računalniku ni uspela in jo je treba zamenjati.

Rešitve za razvijalce

Če ste razvijalec gonilnika ali poskušate odpraviti napako, uporabite ukaz .thread ( Set Register Context ). Nato, da bi našli, kje se je nit zataknila, uporabite ukaz kb ( Display Stack Backtrace ).

Za odpravo te težave je morda mogoče uporabiti informacije v razhroščevalniku. DbgBreakPoint se pokliče, ko pride do napake, če je program za razhroščevanje jedra že deloval, ko je Windows zaznal pogoj ali časovno omejitev. V tem primeru KeBugCheckEx ne bo klican in z uporabo ukaza .bugcheck ( Display Check Check Data ) ne boste našli nobenih koristnih informacij (če sploh kakšne informacije).

Razhroščevalnik bo vseboval informacije, podobne zgoraj navedenim parametrom. Še vedno si lahko ogledate štiri parametre, tako da jih pridobite iz globalnih spremenljivk Watchdog z uporabo enega od dveh ukazov, odvisno od operacijskega sistema.

  • 32-bitni sistem: dd watchdog! G_WdBugCheckData L5
  • 64-bitni sistem: dq nadzornik! G_WdBugCheckData L5

Z uporabo te interaktivne metode za razhroščevanje napake lahko najdete nit, ki povzroča napako, nastavite prekinitvene točke v niti in kasneje uporabite ukaz g (Go) za razhroščevanje zanke.