Книга: ЯЗЫК ПРОГРАММИРОВАНИЯ С# 2005 И ПЛАТФОРМА .NET 2.0. 3-е издание
Директива .maxstack
Директива .maxstack
При реализации метода непосредственно средствами CIL нужно помнить о специальной директиве, которая называется .maxstack. Как следует из ее названия, директива .maxstack задает максимальное число переменных, которые может вместить стек в любой момент времени при выполнении метода. К счастью, директива .maxstack имеет значение по умолчанию (8), которого оказывается достаточно для подавляющего большинства методов, создаваемых разработчиками. Но у вас также есть возможность определить это значение явно, чтобы при желании вручную указать числа локальных переменных в стеке.
.method public hidebysig instanсе void Speak() cil managed {
// В контексте этого метода в стек помещается ровно
// одно значение (строковый литерал).
.maxstack 1
ldstr "Всем привет…"
call void [mscorlib]System.Consolr::WriteLine(string)
ret
}
- Пустая директива
- 7.13. Директива final
- Директива parallel for
- Параллельные секции и директива parallel sections
- Директива #define
- Директива #undef
- Директива обработки ошибок
- 4. Символьные строки директива #define, функции printf( ) и scanf( )
- A12.9. Пустая директива
- Синхронизация и директива critical