Enhver, der har brugt Windows, har set en lejlighedsvis systemmeddelelse om, at et program ikke svarer, men hvordan ved Windows præcist det? Dagens SuperUser Q & A-indlæg har svaret på en forbløffet læsers spørgsmål.
Dagens spørgsmål og svar-session kommer til os med tilladelse fra SuperUser - en underinddeling af Stack Exchange, en community-driven gruppe af Q&A websteder.
Foto med tilladelse til Matthias Ripp (Flickr) .
Spørgsmålet
SuperUser-læser ArunPrasanth vil vide, hvordan Windows ved, at et program ikke reagerer:
Hvordan ved Windows, om et program ikke reagerer? Afstemmer det konstant alle kørende applikationer?
Hvordan ved Windows, om programmer ikke reagerer?
Svaret
SuperUser-bidragyder ratchet freak har svaret for os:
En applikation får begivenheder fra en kø leveret af Windows. Hvis applikationen ikke afstemmer begivenhedskøen i et stykke tid (5 sekunder), f.eks. Ved at lave en lang beregning, antager Windows, at applikationen er hængt og advarer brugeren.
For at undgå det skal applikationer skubbe dyre beregninger til arbejdertråde eller opdele behandling og sørge for, at køen bliver pollet regelmæssigt.
Har du noget at tilføje til forklaringen? Lyd fra i kommentarerne. Vil du læse flere svar fra andre teknisk kyndige Stack Exchange-brugere? Tjek den fulde diskussionstråd her .