Windows

Как Windows знает, что программа не отвечает?

как-делает-окна-ноу-а-программа-это-не-реагирование-00

Любой, кто использовал Windows, видел случайное системное сообщение о том, что программа не отвечает, но как именно Windows это знает? Сегодняшний пост SuperUser Q & A содержит ответ на вопрос озадаченного читателя.

Сегодняшняя сессия Вопросов и Ответов приходит к нам благодаря SuperUser — подразделению Stack Exchange, объединенной группой веб-сайтов вопросов и ответов.

Фото предоставлено Матиасом Риппом (Flickr) .

Вопрос

Читатель SuperUser ArunPrasanth хочет знать, как Windows знает, что программа не отвечает:

Как Windows узнает, что программа не отвечает? Постоянно ли опрашивает все запущенные приложения?

Как Windows узнает, что программы не отвечают?

Ответ

Ответчик Superuser за трещотку-фрик имеет ответ для нас:

Приложение получает события из очереди, предоставленной Windows. Если приложение не опрашивает очередь событий какое-то время (5 секунд), например, при выполнении длинных вычислений, то Windows предполагает, что приложение зависло, и предупреждает пользователя.

Чтобы избежать этого, приложения должны передавать дорогостоящие вычисления рабочим потокам или разделять обработку и обеспечивать регулярный опрос очереди.


Есть что добавить к объяснению? Отключить звук в комментариях. Хотите узнать больше ответов от других опытных пользователей Stack Exchange? Ознакомьтесь с полной веткой обсуждения здесь .

Похожие посты
Windows

Драйверы для Windows 10

Windows

Лучшие приложения для фотографии на вашем Windows Phone

Windows

Команды командной строки для панели управления апплетами

Windows

Официальное приложение SmugMug теперь доступно для Windows Phone