Как увидеть мои управляемые объекты на стеке?

StackOverflow https://stackoverflow.com/questions/2604958

  •  25-09-2019
  •  | 
  •  

Вопрос

Я использую sos.dll в VisualStudio для отладки моей программы C #. Программа так же ниже.

Команда отладки ! Dumpstackobjects..

class Program
{
    static void Main()
    {
        Int32 result = f(1);
    }

    static Int32 f(Int32 i)
    {
        Int32 j = i + 1;
        return j;            <===========BreakPoint is here
    }
}

После ввода команды «! DSO» в немедленном окне Visual Studio, результат как ниже:

ID Thread OS: 0xF6C (3948)

Название объекта ESP / REG

Почему нет ничего? Я думал, что есть args I и локальная переменная j.

Спасибо за мой ответ на мои наивные вопросы ...

Это было полезно?

Решение

!dumpstackobject Дампы ссылок на стек к объектам. Т.е. вы не увидите типы ценностей с этой командой. Использовать !clrstack -l чтобы увидеть местных жителей (использование -p увидеть параметры, а также -a для обоих).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top