Существует ли способ поместить часы в переменную и только иметь повреждение Visual Studio, когда то значение изменяется?
Это сделало бы настолько легче найти хитрые проблемы состояния.
Это может быть сделано?
Для условий точки останова все еще нужен набор точки останова, и я скорее установил часы и позволил Visual Studio установить точки останова при изменениях состояния.
В меню Visual Studio 2005:
Отладка -> Новая Точка останова -> Новая Точка прерывания по данным
Войдите:
&myVariable
Можно также принять решение повредиться явно в коде:
// Assuming C#
if (condition)
{
System.Diagnostics.Debugger.Break();
}
Из MSDN:
Отладчик. Повреждение: Если никакой отладчик не присоединяется, пользователей спрашивают, хотят ли они присоединить отладчик. Если да, отладчик запускается. Если отладчик присоединяется, отладчик сообщен с пользовательским событием точки останова, и отладчик приостанавливает выполнение процесса так же, как если бы точка останова отладчика была поражена.
Это - только нейтрализация, все же. Установка условной точки прерывания в Visual Studio, как описано в других комментариях, является лучшим выбором.
Щелчок правой кнопкой по точке останова хорошо работает для меня (хотя главным образом я использую его для условных точек прерывания на определенных значениях переменных. Даже повреждение по выражениям, включающим поток, называет работы, который очень полезен, при попытке определить проблемы поточной обработки).
Я помню способ, которым Вы описали его с помощью Visual Basic 6.0. В Visual Studio единственный способ, которым я нашел до сих пор, путем определения условие точки останова .
Можно использовать контрольную точку памяти в неуправляемом коде. Не уверенный, если они доступны в управляемом коде все же.