Jeder, der Windows verwendet hat, hat gelegentlich eine Systemmeldung erhalten, die besagt, dass ein Programm nicht antwortet. Wie genau weiß Windows das? Der heutige Q & A-Beitrag von SuperUser enthält die Antwort auf eine verblüffte Leserfrage.

Die heutige Question & Answer-Sitzung wird von SuperUser zur Verfügung gestellt - einer Unterteilung von Stack Exchange, einer Community-basierten Gruppierung von Q & A-Websites.

Foto mit freundlicher Genehmigung von Matthias Ripp (Flickr).

Die Frage

SuperUser-Leser ArunPrasanth möchte wissen, wie Windows weiß, dass ein Programm nicht reagiert:

How does Windows know if a program is not responding? Does it constantly poll all running applications?

Woher weiß Windows, ob Programme nicht reagieren?

Die Antwort

Der Ratgeberfreak von SuperUser hat die Antwort für uns:

An application gets events from a queue provided by Windows. If the application does not poll the event queue for a while (5 seconds), such as doing a long calculation for example, then Windows assumes that the application is hung and alerts the user.

To avoid that, applications should push expensive calculations to worker threads or split up processing and make sure the queue gets polled regularly.


Haben Sie etwas zur Erklärung hinzuzufügen? Ton aus in den Kommentaren. Möchten Sie mehr Antworten von anderen technisch versierten Stack Exchange-Benutzern lesen? Hier geht es zum vollständigen Diskussionsthread.

Top-Tipps:
Kommentare: