Как предотвратить зависание полноэкранного приложения с двойной буферизацией при его отладке? - PullRequest
0 голосов
/ 10 февраля 2010

Я делаю полноэкранное приложение, которое использует двойную буферизацию. Проблема заключается в следующем: когда я отлаживаю его и отладчик приостанавливает процесс (попадание в точку останова или выбрасывание исключения), вторичный буфер может застрять на экране. В этом случае я вижу только текущий кадр и указатель мыши и могу взаимодействовать с пользовательским интерфейсом IDE, но не вижу его (потому что он рисуется на первичном буфере, который не виден, и я только догадываюсь, где находятся кнопки) , Я думаю, что это поведение зависит от графического драйвера и ОС, но, вероятно, я не единственный, кто имеет эту проблему (нет аналогичных проблем в Ubuntu, но в Windows).

У кого-нибудь есть идеи, как вывести основной буфер на фронт?

(ps: не стесняйтесь исправлять мои опечатки и дайте лучший заголовок, если у вас есть лучшая идея.)

РЕДАКТИРОВАТЬ: хорошо, я знаю, что могу купить новый монитор или запустить приложение в оконном режиме. Но мой вопрос о полноэкранном режиме. И я забыл упомянуть, если я не могу перезапустить свою программу, и 2-й буфер застрял, единственный выход из этой ситуации - нажать перезагрузку.

1 Ответ

1 голос
/ 11 февраля 2010

В прежние времена рекомендуемым решением была отладка с двумя экранами. Учитывая относительно дешевое аппаратное решение, оно все же может стать лучшим вариантом. По крайней мере, вы сможете одновременно видеть вывод вашей программы и отладчик.

...