В предыдущем вопросе ( Получить иерархию вызовов объектов ) я получил этот интересный ответ :
Стек вызовов не указывает, где вы пришли из. Он сообщает вам, куда вы собираетесь двигаться дальше.
Насколько я знаю, при вызове функции программа обычно выполняет следующие действия:
В вызывается код :
В вызываемый целевой код:
Процесс возврата : отменить то, что мы сделали, когда вызывали функцию, т.е.развернуть / открыть стек вызовов:
Вопрос:
Как это можно рассматривать как нечто, что «сообщает вам, куда вы собираетесь идти дальше» , а не «сообщает вам, откуда вы пришли» ?
Есть ли что-то в среде исполнения C # или JIT C #, что заставляет этот стек вызовов работать по-другому?
Спасибо за любые указатели на документацию по этому описанию стека вызовов - есть много документации о том, как работает традиционный стек вызовов.