. Net Как CLR отслеживает выполнение программы? - PullRequest
0 голосов
/ 27 апреля 2020

У меня нет конкретной проблемы c, но я из любопытства спрашиваю.

Как CLR отслеживает состояние выполнения программы?

CLR имеет свой собственный «l oop» и всегда l oop через байт-код и решает, когда JIT метод или когда вызывать метод jited?

Если так, то как? Допустим, у вас есть следующие методы

public void Foo()
{
   int a = 0;      
   bar(a);
}

public void bar(int a)
{
   Console.WriteLine(a);
}

Предположим, что ни один из методов еще не связан.

Затем вызывается метод foo(), присоединяется к машинному коду и выполняется.

Машинный код теперь вызывает bar().

Как CLR узнает, что bar() еще не был подключен и его необходимо подключить, если он вызывается на уровне машинного кода?

...