RuntimeHelpers.ProbeForSufficientStack Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Achtung
The Constrained Execution Region (CER) feature is not supported.
Führt eine Überprüfung auf eine bestimmte Menge an Stapelspeicher durch, um sicherzustellen, dass in einem nachfolgenden Codeblock kein Stapelüberlauf auftreten kann (vorausgesetzt, dass der Code selbst nur eine begrenzte und mittlere Menge an Stapelspeicher belegt). Es wird empfohlen, anstelle dieser Methode einen eingeschränkten Ausführungsbereich (CER) zu verwenden.
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 ()
- Attribute
Hinweise
Diese Methode wird von der CER-Infrastruktur (Eingeschränkte Ausführungsregion) verwendet, wenn sie auf Hosts ausgeführt wird, die gegenüber Stapelüberlauf resilient sind, z. B. Microsoft SQL Server und Microsoft Exchange Server. Diese Methode prüft derzeit 48 KB Stapelspeicher auf der x86-Plattform, aber die genaue Menge kann sich im Laufe der Zeit ändern und kann auf anderen Plattformen variieren.
Diese Methode wird auch von Compilern verwendet.
Anstatt die ProbeForSufficientStack -Methode zu verwenden, sollten Sie eine Standard-CER verwenden. Das heißt, wenn Sie planen, eine moderate Menge an Stapelspeicherplatz zu verwenden, rufen Sie die RuntimeHelpers.PrepareConstrainedRegions -Methode direkt vor Ihrem odercatch
try
/Block try
/finally
auf. Wenn Sie eine rekursive Methode aufrufen oder planen, viel Stapelspeicherplatz zu verwenden, müssen Sie die RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup -Methode verwenden.