Конкретная точка останова пути выполнения - PullRequest
0 голосов
/ 19 декабря 2009

Я бы хотел, чтобы отладчик Visual Studio прерывался внутри функции только , когда вызов осуществляется из определенной последовательности вызывающих абонентов. Есть ли способ установить такую ​​точку останова? Или, может быть, какой-нибудь альтернативный взлом?

Я спрашиваю это в контексте как собственного (C ++), так и управляемого (C #) кода.

1 Ответ

4 голосов
/ 19 декабря 2009

Я думаю, вы могли бы установить условную точку останова , которая использует класс System.Diagnostics.StackTrace .

EDIT : GrayWizardx указал в комментарии, что это может быть невозможно. В этом случае вы можете вызвать программный разрыв кода:

#if DEBUG
    // Use StackTrace class in this conditional to determine whether or not to break:
    if (yourConditionIsTrue)
    {
        System.Diagnostics.Debugger.Break();
    }
#endif
...