Выполнение инструкций вплоть до выхода из текущего метода step out

Перед тем, как Вы прочитаете эту статью, настоятельно рекомендуем прочесть, что из себя представляет отладка сценариев.

Visual Studio обязательно должна быть коммерческой версии, версия Express не подходит!

Также для отладки подойдут версии Visual Studio 2013/2015 Community Edition.

Следует также отметить, что отладка возможна только на локальном компьютере. Подключение Visual Studio к удаленному серверу невозможно.

Статья содержит информацию об отладке сценариев с автоматическим переходом кода с помощью Visual Studio 2010/2013/2015.

1. Для начала отладки необходимо открыть Дизайнер ELMA, на вкладке Сценарии выбрать и открыть необходимую версию сценария, далее открыть раздел Отладка (Рис. 1).

Рис. 1. Выбор версии сценария для отладки

2. При запуске отладки на экран будет выведено сообщение о необходимости снятия флажка Требовать точного совпадения исходной версии файлов (Require source files to exactly match the original version) в настройке отладки в Visual Studio (Рис. 2).

Рис. 2. Диалоговое окно «Информация о настройках отладки». Флажок «Требовать точного соответствия исходной версии файлов»

3. Далее необходимо нажать кнопку Продолжить, после чего скрипт откроется в Visual Studio. Далее необходимо перейти в раздел Отладка (Debug) и открыть Параметры (Options) (Рис. 3).

Рис. 3. Visual Studio. Контекстное меню Debug

4. Затем необходимо снять флажок в поле Требовать точного совпадения исходной версии файлов (Require source files to exactly match the original version) и нажать ОК (рис. 4).

Рис. 4. Флажок «Требовать точного соответствия исходной версии файлов»

5. Далее необходимо снова перейти в раздел Отладка (Debug) и открыть Присоединиться к процессу (Attach to Process) (Рис. 5).


Риc. 5. Пункт «Присоединиться к процессу» контекстного меню Debug

6. После этого появится окно со списком процессов, запущенных в операционной системе на локальном компьютере, на котором установлена система ELMA (Рис. 6).

  • EleWise ELMA.WebServer.Service.exe – выберите этот процесс, если ELMA установлена на внутреннем сервере Cassini;
  • w3wp.exe выберите этот процесс, если ELMA установлена на сервере IIS;
  • Если в списке нет ни одного из указанных выше процессов, то установите флажок в левом нижнем углу Показать процессы, запущенные всеми пользователями (Show process from all users) – необходимые процессы появятся в текущем списке.


Рис. 6.

7. Далее запускается отладка. Добавляем Точку останова (Breakpoints). Подробнее о создании точек останова см. соответствующую страницу справки (в Visual Studio всё аналогично как и во внутреннем отладчике) (Рис. 7).


Рис. 7. Добавление точки останова

8. Далее в веб-приложении требуется запустить необходимый процесс (Рис. 8).

Рис. 8. Диалоговое окно выбора процесса для запуска в веб-приложении ELMA

9. Когда мы дойдем до того участка процесса, где будет исполняться код, Visual Studio автоматически переключится на передний план (то есть поверх всех остальных окон) (Рис. 9).

Рис. 9.

10. Добавление переменных к просмотру осуществляется следующим образом (Рис. 10, 11):

  • выделяем необходимую для просмотра переменную;
  • открываем консольное меню (правой кнопкой мыши);
  • выбираем Добавить контрольное значение (Add Watch);
  • выбранная нами переменная появляется в списке просмотра.

Рис. 10.

Рис. 11.

Команды отладки в Visual Studio 2013/2015:

  • запуск программы под отладчиком/продолжение после точки останова – F5;
  • шаг без захода внутрь метода (Step Over) – F10;
  • шаг с заходом внутрь метода (Step Into) – F11;
  • выполнение инструкций вплоть до выхода из текущего метода. (Step Out) – Shift+F11.

Alvin Seville

342 / 272 / 134

Регистрация: 25.07.2014

Сообщений: 4,537

Записей в блоге: 9

1

Шаг с обходом и выходом

24.11.2018, 18:31. Показов 7370. Ответов 21


Студворк — интернет-сервис помощи студентам

Правильно ли я понимаю, что шаг с обходом и выходом выполняют переход по точкам останова, в отличии от шага с заходом?



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

24.11.2018, 18:31

Ответы с готовыми решениями:

Шаг компиляции, шаг компоновки, и шаг запуска
Что происходит на шаге компиляции, шаге компоновки, и шаге запуска, с переменными и функциями.
что…

Кнопки «шаг назад», «шаг вперед», касаемо последнего события на форме
подскажите, Можно ли задать одной кнопке( Button) «шаг назад» , другой «шаг вперед» касаемо…

Шаг младенца, шаг великана Трудоемкость
Помогите реализовать данную функцию с трудоемкостью (√P×logP).
Как делать именно поиск равных…

Дерево, с неверным обходом
В общем, есть программа, в которую я добавил доп. функцию "обхода в ширину" и она работает неверно….

21

8927 / 4839 / 1885

Регистрация: 11.02.2013

Сообщений: 10,246

24.11.2018, 19:58

2

Нет. Шаг с обходом (F10) не заходит в метод. Шаг с выходом (Shift+F11) выходит из метода, куда зашёл и останавливается на следующей строчке.



1



Alvin Seville

342 / 272 / 134

Регистрация: 25.07.2014

Сообщений: 4,537

Записей в блоге: 9

24.11.2018, 19:59

 [ТС]

3

ViterAlex, а точки останова тогда для какого из трёх типов шагов нужны?



0



8927 / 4839 / 1885

Регистрация: 11.02.2013

Сообщений: 10,246

24.11.2018, 20:01

4

Ни для какого. Точки останова нужны, чтобы остановиться в определённом месте во время выполнения программы. Возможно, с условием. Продолжить после точки останова можно по F5.



0



Alvin Seville

342 / 272 / 134

Регистрация: 25.07.2014

Сообщений: 4,537

Записей в блоге: 9

24.11.2018, 20:03

 [ТС]

5

ViterAlex, ну, а шаг с заходом — последовательно же строчки выполняет, зачем ему, например точки останова?



0



8927 / 4839 / 1885

Регистрация: 11.02.2013

Сообщений: 10,246

24.11.2018, 20:05

6

Соколиный глаз, я же сказал, что ему точки останова не нужны. Шаг потому и шаг, что выполняется построчно. В ручном режиме.



0



Эксперт .NET

6408 / 3945 / 1578

Регистрация: 09.05.2015

Сообщений: 9,245

24.11.2018, 20:05

7

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



1



Alvin Seville

342 / 272 / 134

Регистрация: 25.07.2014

Сообщений: 4,537

Записей в блоге: 9

24.11.2018, 20:14

 [ТС]

8

Someone007, тип первая точка останова в Main определяет откуда я начну по шагово просматривать как программа выполняется?

Добавлено через 1 минуту

Цитата
Сообщение от ViterAlex
Посмотреть сообщение

Точки останова нужны, чтобы остановиться в определённом месте во время выполнения программы.

А разве я по-шагово не могу дойти до места где мне надо остановиться?



0



Alvin Seville

342 / 272 / 134

Регистрация: 25.07.2014

Сообщений: 4,537

Записей в блоге: 9

25.11.2018, 13:58

 [ТС]

9

Вопрос актуален.



0



8927 / 4839 / 1885

Регистрация: 11.02.2013

Сообщений: 10,246

25.11.2018, 14:01

10

Соколиный глаз, в чём вопрос-то?



0



Alvin Seville

342 / 272 / 134

Регистрация: 25.07.2014

Сообщений: 4,537

Записей в блоге: 9

25.11.2018, 14:25

 [ТС]

11

ViterAlex, вопросы:
1) Первая точка останова в Main определяет откуда я начну по шагово просматривать как программа выполняется?
2)

Цитата
Сообщение от Соколиный глаз
Посмотреть сообщение

Точки останова нужны, чтобы остановиться в определённом месте во время выполнения программы.

А разве я по-шагово не могу дойти до места где мне надо остановиться?



0



Эксперт .NET

6408 / 3945 / 1578

Регистрация: 09.05.2015

Сообщений: 9,245

25.11.2018, 14:29

12

Цитата
Сообщение от Соколиный глаз
Посмотреть сообщение

тип первая точка останова в Main определяет откуда я начну по шагово просматривать как программа выполняется?

Последняя сработавшая точка останова.

Цитата
Сообщение от Соколиный глаз
Посмотреть сообщение

А разве я по-шагово не могу дойти до места где мне надо остановиться?

Можете. Только если у вас 10000 строк кода, вы что будете 10000 шагов делать?



0



Alvin Seville

342 / 272 / 134

Регистрация: 25.07.2014

Сообщений: 4,537

Записей в блоге: 9

25.11.2018, 14:50

 [ТС]

13

Someone007, я не понимаю. Я запутался.

Соколиный глаз, я же сказал, что ему точки останова не нужны. Шаг потому и шаг, что выполняется построчно. В ручном режиме.

Это тогда как понимать? Если они для шагов не нужны, то для чего они нужны и как их использовать? Как от одной точки останова к другой перейти?



0



8927 / 4839 / 1885

Регистрация: 11.02.2013

Сообщений: 10,246

25.11.2018, 14:54

14

Цитата
Сообщение от Соколиный глаз
Посмотреть сообщение

для чего они нужны и как их использовать?

Они нужны, чтобы остановить выполнение программы в нужном месте. В чём тут можно запутаться? После остановки есть два варианта продолжения: продолжить выполнение в пошаговом режиме: F10, F11, Shift+F11 или продолжить выполнять программу далее: F5.



1



Эксперт .NET

6408 / 3945 / 1578

Регистрация: 09.05.2015

Сообщений: 9,245

25.11.2018, 14:54

15

Лучший ответ Сообщение было отмечено Соколиный глаз как решение

Решение

Цитата
Сообщение от Соколиный глаз
Посмотреть сообщение

то для чего они нужны и как их использовать?

Ставите точку в нужном месте (местах), запускаете программу, она останавливается в нужных точках (для перехода к следующей точке если таковая существует жмете Continue F5), что дает возможность посмотреть значения переменных…

Точки останова часто совмещают с переходами по шагам, чтобы проанализировать ход работы программы (изменение значений переменных между шагами например).



1



Alvin Seville

342 / 272 / 134

Регистрация: 25.07.2014

Сообщений: 4,537

Записей в блоге: 9

25.11.2018, 14:55

 [ТС]

16

ViterAlex, то есть — F5 — это прыжок на следующую точку останова?



0



8927 / 4839 / 1885

Регистрация: 11.02.2013

Сообщений: 10,246

25.11.2018, 14:57

17

Лучший ответ Сообщение было отмечено Соколиный глаз как решение

Решение

Соколиный глаз, строго говоря, нет. Это продолжение выполнение программы. Если дальше встретится точка останова, то выполнение на ней остановится.



1



663 / 487 / 49

Регистрация: 10.03.2012

Сообщений: 3,553

25.11.2018, 18:34

18

Цитата
Сообщение от ViterAlex
Посмотреть сообщение

в пошаговом режиме: F10, F11, Shift+F11

Можете объяснить разницу этих режимов?



0



Alvin Seville

342 / 272 / 134

Регистрация: 25.07.2014

Сообщений: 4,537

Записей в блоге: 9

25.11.2018, 19:10

 [ТС]

19

Invincible, как я понимаю:
1) Шаг с заходом — заходит в вызываемый метод и позволяет пройтись по нему изнутри.
2) Шаг с обходом — позволяет выполнить вызываемый метод как один оператор, не заходя в него.
3) Шаг с выходом — довыполняет текущий метод и возвращается в его вызывающий, становясь на следующий оператор, который был после вызова метода из которого мы вышли.



1



663 / 487 / 49

Регистрация: 10.03.2012

Сообщений: 3,553

25.11.2018, 20:23

20

Цитата
Сообщение от Соколиный глаз
Посмотреть сообщение

1) Шаг с заходом — заходит в вызываемый метод и позволяет пройтись по нему изнутри.
2) Шаг с обходом — позволяет выполнить вызываемый метод как один оператор, не заходя в него.

Если используем в коде, в котором нет вызовов методов, тогда разницы между этими режимами нет?



0



Пошаговое выполнение программы

Если
программа находится в режиме отладки,
то она будет работать медленнее, так
как все строки выполняются пошагово.
При этом можно непосредственно наблюдать
за результатами выполнения каждой
строки. Пошаговое выполнение является
важным средством поиска ошибок отладки
программы. Существует несколько различных
команд пошагового выполнения программы
или трассировки. Команды пошагового
выполнения можно вызвать из меню Debug
либо из панели инструментов Debug.

Шаг с заходом

При
пошаговом выполнении строки кода
выполняются одна за другой. После
выполнения одной строки кода маркер
следующей строки перемещается на одну
строку. Шаг с заходом (команда Step
into)
позволяет не только выполнить
соответствующий оператор. Если это
оператор вызова процедуры ли функции,
он дает возможность перейти в эту
процедуру. Для этого следует нажать
кнопку Step
into
на панели инструментов Debug
или клавишу F8. Логическая
последовательность строк программы
сохраняется. Благодаря этому можно
отслеживать последовательность
выполнения строк при вызове процедуры,
например, в операторах ветвления.

В
результате нажатия кнопки Step
into
в режиме разработки программа также
переходит в режим выполнения. Visual
Basic не может самостоятельно
решить, какую из многочисленных процедур
обработки события следует выполнить,
поэтому после возникновения события,
для которого существует процедура
обработки. Visual Basic
перейдёт в режим отладки.

Шаг с обходом

Шаг с
обходом подобен шагу с заходом. Различие
проявляется только при вызове текущей
процедурой других процедур. Если при
шаге с заходом осуществляется переход
в вызываемую процедуру, то шаг с обходом
выполняет вызов процедуры как единичный
оператор, т.е. без захода.

Шаг
с обходом выполняется нажатием кнопки
Step Over
на панели инструментов Debug
или комбинации клавиш Shift+F8.
Этот вид пошагового выполнения
представляет интерес при поиске ошибки
в процедурах, содержащих вызовы других
процедур. Сначала можно протестировать
текущую процедуру без захода в вызываемые
процедуры. Если же выяснится, что ошибка
возникает в вызываемой процедуре, то
при следующем проходе следует войти в
эту процедуру.

Шаг с выходом

Команда
Step Out
меню Debug
позволяет выполнить оставшуюся
часть текущей процедуры и возвратиться
в точку вызова. Для вызова команды Step
Out можно
воспользоваться также кнопкой панели
инструментов Debug
либо комбинацией клавиш Ctrl+Shift+F8.

Эта
команда доступна только в режиме отладки.
Если текущая строка находится в вызванной
процедуре, то с помощью команды Step
Out
остальная часть процедуры не
выполняется пошагово.

Отличие
команды Step
Out
от команды Continue
состоит в том, что после выхода из
процедуры переключение в режим выполнения
не происходит, если эта процедура была
вызвана другой. Если же текущая процедура
не была вызвана другой процедурой, то
происходит переход в режим выполнения.
Visual Basic ожидает возникновения
события, выполнение процедуры обработки
которого, начнется в режиме отладки.

Выполнить до текущей позиции

Команда
Run
To
Cursor
меню Debug
позволяет выполнить программу от
текущей выполняемой строки до строки
с установленным в ней текстовым курсором.
Если текстовый курсор находится в
выполняемой строке, то результат
выполнения этой команды будет таким
же, что и команды Continue.

Для
вызова команды Run
To
Cursor
используется также комбинация
клавиш Ctrl+F8. Команда Run
To Cursor
используется, как правило, при отладке
программ, содержащих циклы. Она позволяет
сразу перейти к выполнению нужного
оператора, тогда как при пошаговом
выполнении команду Step
into
иногда приходится вызывать несколько
раз.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]

  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #
  • #

Stepping is the process of controlling step-by-step execution of the program.

IntelliJ IDEA provides a set of stepping actions, which are used depending on your strategy (for example, whether you need to go directly to the next line or enter the methods invoked on your way there).

The stepping buttons are located on the Debug window toolbar.

Stepping buttons in the Debug tool window

Step over

Steps over the current line of code and takes you to the next line even if the highlighted line has method calls in it. The implementation of the methods is skipped, and you move straight to the next line of the caller method.

  • Click the Step Over button Step Over button or press F8.

In the example, line 5 is about to be executed. If you step over, the debugger will move straight to line 6 without jumping into the count() method.

Stepping over a method call

If there are breakpoints inside the skipped methods, the debugger will stop at them. To skip any breakpoints on the way, use Force step over.

Step over took us to the next line of code

Step into

Steps into the method to show what happens inside it. Use this option when you are not sure the method is returning a correct result.

  • Click the Step Into button Step Into button or press F7.

In the example, line 5 is about to be executed. If you step into, the debugger will jump into the implementation of the count(int to) method allowing you to examine in detail how its result is produced.

Stepping in a method

If there are several method calls on the line, IntelliJ IDEA asks you which method to enter. This feature is called Smart step into.

Inside the method

You can configure Smart Step Into to be automatically used every time when there are multiple method calls on the line. Alternatively, it can be invoked only when you expressly do so. To configure this feature, go to and set the Always do smart step into option as required.

Some methods (for example methods of standard Java classes like System) are skipped by Step into as you normally might not need to debug them. This list can be fine-tuned on the page of the Settings dialog (Ctrl+Alt+S).

Smart step into

Smart step into is helpful when there are several method calls on a line, and you want to be specific about which method to enter. This feature allows you to select the method call you are interested in.

  1. From the main menu, select or press Shift+F7.

  2. Click the method. You can also select it using the arrow keys or tabs and press Enter/F7.

    Smart Step into lets you decide which method to enter

You can configure Smart Step Into to be used instead of the regular Step Into every time there are multiple method calls on the line. This is done in .

Step out

Steps out of the current method and takes you to the caller method.

  • Click the Step Out button Step Out button or press Shift+F8.

In the example, stepping out skips all iterations of the loop and takes you straight to the main method (the caller).

Step out continues the execution until the method is complete

Step out of code block

Steps out of the currently executed code block. This lets you skip the remaining iterations of while, for and alike without exiting the enclosing method.

  • From the main menu, select .

In the example, the action exits the for loop and brings us to line 12. Note that the loop was executed anyway, and the output is visible in the console as if we had stepped through each iteration.

Steps out of the for loop but not the method

Run to cursor

Continues the execution until the position of the caret is reached.

  1. Place the caret at the line where you want the program to pause.

  2. Click the Run to Cursor button Run to Cursor button or press Alt+F9.

Also, you can Run to Cursor by clicking the line number in the gutter.

Run to Cursor with a single click

You can configure whether you want Run to Cursor to work on clicking a line number in .

In the example, Run to cursor will continue the execution and stop at line 7 as if there were a breakpoint. If there are breakpoints in the count() method, the program will be suspended there.

Caret is in the piece of code where we want to go

You can configure whether you want Run to Cursor to work on clicking a line number in .

In the example, Run to cursor will continue the execution and stop at line 7 as if there were a breakpoint. If there are breakpoints in the count() method, the program will be suspended there.

Caret is in the piece of code where we want to go

To skip any breakpoints on the way, use Force run to cursor.

Force step into

Steps in the method even if this method is skipped by the regular Step Into.

  • Click the Force step into button Force Step Into icon or press Alt+Shift+F7.

In the example, the execution is suspended right before a line which is about to call System.out.println().

Force step into disregards the list of ignored classes

With Force Step Into, we jump right into the implementation of the System.out.println() method, while the regular Step Into would take us to line 20.

Inside println()

Force run to cursor

Continues the execution until the position of the caret is reached. All breakpoints on the way are ignored.

  1. Place the caret at the line where you want the program to pause.

  2. From the main menu, select or press Ctrl+Alt+F9.

In the example, Force run to cursor will continue the execution and stop at line 7 as if there were a breakpoint. The breakpoint inside count() will not have any effect.

Caret is in the piece of code where we want to go

Force step over

Steps over the current line of code and takes you to the next line even if the highlighted line has method calls in it. If there are breakpoints in the called methods, they are ignored.

  • From the main menu, select or press Alt+Shift+F8.

In the example, force stepping over takes you to the print statement on line 6 even though there is a breakpoint in the count() method, which would otherwise, with Step over, suspend the application in all iterations of the loop.

The breakpoint in the called method is going to be ignored

Reset frame

Allows you to undo the last frame and restore the previous frame in the stack. This can be useful, for example, if you’ve mistakenly stepped too far, or want to re-enter a function where you missed a critical spot.

Note that this option only affects local variables and does not restore the overall program state in that it does not revert values for static and instance variables. This may result in an altered program flow.

  • Hover over the frame you want to reset, then click the Reset Frame button that appears.

    Reset frame button

In the example below, dropping the frame returns you to line 5 as if count has never been executed. There are no static or instance variables, which were affected, however the console output, which has been already produced and can be considered a side effect, stays.

Drop frame undoes the current frame as if the method has not been executed

Troubleshoot skipped breakpoints

IntelliJ IDEA may skip breakpoints under the following circumstances:

  • The breakpoint was hit in another thread while stepping

  • The breakpoint was hit within a code block evaluated by a feature such as auto-expressions or watches.

If that happens to breakpoints that are critical for your debugging session, do the following to prevent IntelliJ IDEA from missing them:

  • Start stepping from a breakpoint that only pauses suspends the current thread

  • Turn off the following features:

    • Auto-expressions in Variables view

    • Alternative view for Collections classes

    • toString() object view

Improve stepping speed

Debugger features consume resources and may impact stepping performance. If the performance is not satisfactory, follow the recommendations provided in this chapter to optimize it.

  • Use the Overhead feature to identify the cause(s) of performance degradation.

  • Disable or minimize the use of the following features if they are not required for your project:

    • Method breakpoints and field watchpoints

    • The Show method return values option

    • The Alternate view for Collections classes option ()

    • ‘toString’ object view ()

  • Simplify the conditions for breakpoints and watchpoints, especially frequently hit ones.

  • During the debugging session, switch to a view with fewer elements.

Configure stepping behavior

  1. Press Ctrl+Alt+S to open the IDE settings and select .

  2. Configure the stepping behavior as required. For information on particular options, refer to the table below.

Option

Description

Skip synthetic methods

Select this checkbox to suppress stepping into synthetic methods (methods generated by the compiler) while debugging.

Skip constructors

Select this checkbox to suppress stepping into constructors while debugging.

Skip class loaders

Select this checkbox to suppress stepping into class loaders while debugging.

Skip simple getters

Select this checkbox to suppress stepping into simple getter methods (that is, methods designed just to return the necessary value) while debugging.

Do not step into the classes

Select this checkbox to suppress stepping into the specified classes while debugging. The list of classes contains entries of two types:

  • Fully qualified class names.

  • Regular expressions (either exact matches or patterns that begin or end with «*», for example, java.*).

By default, the list contains some standard Java SDK class patterns so that you do not have to waste your time stepping into Java class libraries. Use the checkboxes in the list to disable/enable particular patterns temporarily.

Use the Add class,Add pattern, and Remove buttons to manage the list.

Evaluate finally blocks on pop frame

Select whether you want to evaluate finally blocks on pop frame or not, or you want to be notified before they are evaluated.

Resume only the current thread

Select this checkbox, if you need to resume only the active thread when stepping.

Last modified: 13 June 2023

Printing the result of your program to the console is a common practice, but being familiar with a debugger opens a new world of possibilities. A debugger is built into most of the popular IDEs and is also integrated with most web browsers. It allows us to run a program, step through it, log transition stages, explore scope members and preview the values at any flow stage.

To use the debugger with confidence, you need to understand the fundamental actions — continue, step over, step into and step out. However, I noticed that people click these buttons randomly without understanding what they’re doing. So here I come with a simple explanation for y’all.

Continue, Step Over, Step Into, Step Out, Restart and Stop actions in Visual Studio Code debugger

I will use Visual Studio Code to debug a simple JavaScript program, but you can transfer this knowledge to any other IDE and programming language. Visual Studio Code supports JavaScript debugging out of the box, but you can also debug other programming languages just by installing the debugger extension.

const jenny = {
  name: "Jennifer",
  surname: "Lopez",
  born: 1969,
};

const getFullName = ({ name, surname }) => `${name} ${surname}`;
const getAge = ({ born }) => new Date().getFullYear() - born;

const fullName = getFullName(jenny);
const age = getAge(jenny);

const result = `${fullName} is ${age} years old.`;

console.log(result);

Continue

Debugger executes the program and “breaks” only on user-defined breakpoints (red circles).

Continue actions in Visual Studio Code debugger

Step Over

Debugger executes the program statement by statement within the current execution context (scope).

Step Over actions in Visual Studio Code debugger

Step Into

Debugger executes the program statement by statement. The debugger will execute the function body if the statement is a function call (a new execution context appears in the “call stack” tab). Otherwise, the debugger will continue to the following statement, just like the “Step Over” action.

Step Into actions in Visual Studio Code debugger

Step Out

If the debugger is within a nested scope, this action proceeds until the function returns (exits the current execution context). In case the debugger is within the global scope, this action executes the program to the end.

Step Out actions in Visual Studio Code debugger

Restart, stop and good luck!

You can figure out what “Restart” and “Stop” actions do by yourself, right? I hope this article helped you out to become a better debugger. Until next time, stay curious and keep on sharing knowledge with other geeks 👊

Понравилась статья? Поделить с друзьями:

Новое и полезное:

  • Выполнение задания с использованием пошаговой инструкции это метод
  • Выполнение должностных обязанностей согласно должностной инструкции
  • Выполнение должностных инструкций какие специалистов наиболее важно при заправке вс гсм
  • Выписаться из квартиры и прописаться в другую пошаговая инструкция через мфц
  • Выписаться из квартиры и прописаться в другую пошаговая инструкция через госуслуги

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии