Практическое руководство. Обновление просматриваемых значений
Этот раздел применим к:
Выпуск |
Visual Basic |
C# |
F# |
C++ |
Web Developer |
---|---|---|---|---|---|
Express |
|||||
Pro, Premium и Ultimate |
При вычислении значения выражения в отладчике в столбце Значение отображается один или два значка обновления. Один значок обновления отображается в виде круга со стрелками, которые изогнуты в противоположных направлениях. Другой значок обновления отображается в виде круга, содержащего две волнистые линии, которые похожи на нити.
Эти значки указывают, что значение, отображаемое отладчиком, не является текущим. Значение может быть правильным или неправильным, но оно является устаревшим. Чтобы подкрепить этот факт значение также отображается серым цветом. Можно принудительно вычислить значение выражения, однако необходимо понимать причины отображения данных значков и возможные последствия.
При наведении указателя мыши на значок отображается всплывающая подсказка, в которой указаны причины, по которым нельзя вычислить значение выражения.
Значок с изогнутыми стрелками может отображаться по следующим причинам:
При вычислении выражения возникла ошибка. Например, истекло время ожидания или переменная находилась вне области действия.
Для вычисления выражения требуется вычислить значение свойства или выполнить неявный вызов функции. Вычисление значений свойств и неявные вызовы функций могут негативно повлиять на состояние программы. Поскольку эти эффекты могут затруднять отладку, автоматическое вычисление значений свойств и неявные вызовы функций отключены. Иногда программист может непреднамеренно отключить автоматическое вычисление. Дополнительные сведения о побочных эффектах см. в разделе Побочные эффекты и выражения.
Если отображается значок с двумя волнистыми нитями, то это означает, что выражение не может быть вычислено из-за потенциальных зависимостей между потоками. Наличие зависимости между потоками означает, что для вычисления коду требуется временно запустить другие потоки в приложении. Как правило, при нахождении в режиме приостановки выполнения все потоки в приложении остановлены. Разрешение временного запуска других потоков может привести к непредвиденным результатам, а также привести к тому, что отладчик будет игнорировать различные события, например точки останова.
Обновление устаревшего значения
Выполните одно из следующих действий.
Щелкните значок обновления.
Выделите значение и затем нажмите клавишу ПРОБЕЛ.
Отладчик попытается пересчитать выражение. Если значок обновления отображался из-за отключения автоматического вычисления свойств и неявных побочных эффектов, теперь выражение будет вычислено.
Включение или отключение автоматического вычисления свойств
В меню Сервис выберите пункт Параметры.
В диалоговом окне Параметры откройте узел Отладка и выберите Общие.
Если узел Отладка не отображается, щелкните Показать все параметры.
Установите или снимите флажок Включить вычисление свойств и другие неявные вызовы функций и затем нажмите кнопку ОК.