Я хотел бы понять, насколько повсеместным может быть встраивание JIT.
Предположим, в моем коде я вызываю некоторую функцию, скажем, из System.IO
сборки и передаю ссылку обратного вызова на функцию, реализованную в моем коде, для вызова из этой System.IO
функции. В моей функции есть GetCallingAssembly()
вызов. Поэтому, если мой обратный вызов встроен в System.IO
, вызов GetCallingAssembly()
, который изначально был в моем коде и предназначался для того, чтобы сказать, что «текущий» метод вызывается изнутри System.IO
, скажет, что теперь он вызывается внутри моего кода.
Возможно ли такое встраивание или сборки среды выполнения .NET обрабатываются по-разному, поэтому JIT-инлайнинг пользовательского кода в код среды выполнения .NET не разрешен?