Використання точок зупину

Ви можете керувати тим, де і коли виконується точка зупинки, задаючи умови.

Клацніть правою кнопкою миші точку зупину або наведіть курсор миші на точку зупину і виберіть значок "Параметри".







У контекстному меню виберіть Умови. Відкриється вікно Параметри точки зупину:

Використання точок зупину

Якщо встановити прапорець Умови. відкриється вікно з різними видами умов.

Умовні вирази. При виборі умовного виразу можна вибрати дві умови: Є true і при зміні. Виберіть значення Є true. якщо потрібно перервати виконання при вислову, або значення При зміні. якщо потрібно перервати виконання при зміні значення виразу.

У наступному прикладі задається застосування точки зупину, тільки якщо значення testInt одно 4:

Використання точок зупину

У наступному прикладі задається застосування точки зупину, тільки якщо значення testInt змінено:

Використання точок зупину

Поведінка поля "При зміні" відрізняється для різних мов програмування. Якщо значення При зміні вибрано для машинного коду, відладчик НЕ розглядалося першим обчислення умови як зміна, тому при першому обчисленні виразу точка зупинки не спрацює. Якщо значення При зміні вибрано для керованого коду, точка зупинки спрацьовує при першому обчисленні після вибору умови При зміні.

Якщо умова точки зупину має неприпустимий синтаксис, з'явиться попередження. Якщо вказати умову для точки зупинки з неприпустимою семантикою, але допустимим синтаксисом, попередження з'явиться при досягненні точки зупину в перший раз. У будь-якому випадку, відладчик перериває виконання при попаданні на неприпустиму точку зупину. Точка зупину пропускається, тільки якщо умова допустимо і приймає значення false.

Умова може бути будь-яким допустимим виразом, яке розпізнає відладчик. Більш детальну інформацію про допустимі вирази див. В розділі Вирази в отладчике.







Бувають випадки, коли необхідно подивитися поведінку конкретного об'єкта; наприклад, може знадобитися дізнатися, чому об'єкт був вставлений в колекцію більше одного разу. У C # і F # можна створювати ідентифікатори об'єктів для певних примірників посилальних типів і використовувати їх в умовах точок зупину. Ідентифікатор об'єкта створюється службами налагодження середовища CLR і пов'язаний з об'єктом. Щоб створити ідентифікатор об'єкта, виконайте наступне.

Встановіть точку зупинки в коді після створення об'єкта.

Почніть налагодження і, коли виконання зупиниться в точці зупинки, знайдіть точку зупину у вікні Локальні. клацніть її правою кнопкою миші і виберіть пункт Створити ідентифікатор об'єкта.

У вікні Локальні ви повинні побачити символ $ і число. Це і є ідентифікатор об'єкта.

Додайте нову точку зупинки в точці, яку потрібно дослідити, наприклад в точці додавання об'єкта в колекцію.

Використовуйте ідентифікатор об'єкта в поле "Умовний вираз". Наприклад, якщо є змінна item. посилається на об'єкт, який повинен бути доданий в колекцію, задайте item == $ n. де n - номер ідентифікатора об'єкта.

Виконання перерветься в точці додавання об'єкта в колекцію.

Якщо пізніше буде потрібно видалити ідентифікатор об'єкта, клацніть правою кнопкою миші змінну у вікні Локальні і виберіть пункт Видалити ідентифікатор об'єкта.

Зверніть увагу, що ідентифікатори об'єктів створюють слабкі посилання і не запобігають збірку сміття для об'єкта. Вони дійсні тільки в рамках поточного сеансу налагодження.

Якщо є підозра, що цикл в коді починає неправильно поводитися після певного числа ітерацій, можна встановити точку зупину для зупинення виконання після зазначеного числа влучень до відповідного рядка коду, замість того щоб багаторазово натискати клавішу F5 для досягнення потрібного рівня ітерації.

У вікні Параметри точки зупину задайте в якості умови Кількість звернень. Потім можна вказати число ітерацій. У наступному прикладі задається виконання точки зупину при кожній ітерації:

Використання точок зупину

Ви можете обмежити точку зупину, зробивши її спрацьовування можливим лише на певних пристроях або в певних процесах або потоках.

У вікні Параметри точки зупину задайте в якості умови Фільтр. Задайте одне або кілька виразів, наведених нижче.

Значення рядків слід укласти в подвійні лапки. Для комбінації умов можна використовувати знаки (І), || (АБО). (НЕ) і дужки.

Точка трасування - це точка зупинки, яка виводить повідомлення в вікно виведення. Точка трасування може грати роль тимчасового оператора трасування в мові програмування.

У вікні Параметри точки зупину встановіть прапорець Дії. У групі Дія виберіть пункт Запис повідомлення в вікні виводу. Можна вивести універсальну рядок, наприклад це тест. Щоб додати до повідомлення значення змінної або вираз, використовуйте фігурні дужки.

Щоб призупинити виконання при досягненні точки трасування, зніміть прапорець Продовжити виконання. Якщо прапорець Продовжити виконання встановлений, виконання не зупиняється. В обох випадках виводиться повідомлення.

В поле Повідомлення можна використовувати наведені нижче ключові слова.







Схожі статті