RuntimeHelpers.ProbeForSufficientStack Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Внимание
The Constrained Execution Region (CER) feature is not supported.
Пробы для определенного объема пространства стека, чтобы гарантировать, что переполнение стека не может произойти в следующем блоке кода (если код использует только ограниченное и умеренное количество пространства стека). Рекомендуется использовать ограниченный регион выполнения (CER) вместо этого метода.
public:
static void ProbeForSufficientStack();
[System.Obsolete("The Constrained Execution Region (CER) feature is not supported.", DiagnosticId="SYSLIB0004", UrlFormat="https://aka.ms/dotnet-warnings/{0}")]
public static void ProbeForSufficientStack();
[System.Security.SecurityCritical]
public static void ProbeForSufficientStack();
public static void ProbeForSufficientStack();
[<System.Obsolete("The Constrained Execution Region (CER) feature is not supported.", DiagnosticId="SYSLIB0004", UrlFormat="https://aka.ms/dotnet-warnings/{0}")>]
static member ProbeForSufficientStack : unit -> unit
[<System.Security.SecurityCritical>]
static member ProbeForSufficientStack : unit -> unit
static member ProbeForSufficientStack : unit -> unit
Public Shared Sub ProbeForSufficientStack ()
- Атрибуты
Комментарии
Этот метод используется инфраструктурой ограниченного региона выполнения (CER) при выполнении на узлах, устойчивых к переполнению стека, например Microsoft SQL Server и Microsoft Exchange Server. Этот метод в настоящее время проверяет 48 КБ пространства стека на платформе x86, но точное количество может меняться с течением времени и может отличаться на других платформах.
Этот метод также используется компиляторами.
Вместо использования метода следует использовать стандартный ProbeForSufficientStack CER. То есть, если вы планируете использовать умеренное количество пространства стека, вызовите RuntimeHelpers.PrepareConstrainedRegions метод непосредственно перед вашимtry/finallyили try/catch блоком. Если вы вызываете рекурсивный метод или планируете использовать много места в стеке, необходимо использовать RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup этот метод.