Пытаюсь разобраться с хранением данных в c#. Вот например, есть ,когда IL-оператор Stloc берет верхнее значение стека и помещает его в локальную переменную, где эта сама переменная хранится? Например,
static void Main()
{
{
int x = 5;
}
}
В Il-нотации это
.method private hidebysig static void Main() cil managed
{
.entrypoint
.maxstack 1
.locals init (
[0] int32 num)
L_0000: nop
L_0001: nop
L_0002: ldc.i4.5
L_0003: stloc.0 <---В какую область памяти упадет значение из стека?
L_0004: nop
L_0005: ret
}
В Майкрософтовской CLR локальные переменные хранятся обычно* в стеке, в фрейме, выделенном для текущей функции. Стек — деталь имплементации текущего JIT-компилятора, его нет на уровне IL-кода (и может в принципе не быть в других имплементациях CLR).
IL-код представляет собой стековую машину, стек которой для Microsoft CLR лишь описательная конструкция, и преобразуется в «обычный» регистровый код при JIT-компиляции. IL-стек не имеет ничего общего со стеком, с которым работает JIT-компилятор, и является лишь формальным компонентом.
*Исключения:
Виртуальный выделенный сервер (VDS) становится отличным выбором
запускаю поток, в нем открывается форма с помощью ApplicationRun(frm)
Приложение должно выполнить команды по созданию mailbox напримерЗапускаться в локальной сетке, но не с машины где стоит сам Exchange
Я пытаюсь получить Exif из JPG и CR2 файлов
Подскажите, есть ли способ сгенерировать GUID код, с фигурными скобками?