GC.EndNoGCRegion 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
结束无 GC 区域延迟模式。
public:
static void EndNoGCRegion();
public static void EndNoGCRegion ();
[System.Security.SecurityCritical]
public static void EndNoGCRegion ();
static member EndNoGCRegion : unit -> unit
[<System.Security.SecurityCritical>]
static member EndNoGCRegion : unit -> unit
Public Shared Sub EndNoGCRegion ()
- 属性
例外
垃圾回收器不处于无 GC 区域延迟模式。
或 - 无 GC 区域延迟模式已结束,可能是因为已引发垃圾回收。
或 - 内存分配超过了 TryStartNoGCRegion(Int64) 方法调用中指定的量。
注解
如果垃圾回收器未处于 GC 区域延迟模式,则 EndNoGCRegion 该方法会 InvalidOperationException 引发。 这在以下任何条件下发生:
该方法 TryStartNoGCRegion 以前未调用。
返回
false
的方法的调用TryStartNoGCRegion。对 TryStartNoGCRegion 方法的调用引发异常。
可以使用以下代码(如以下代码)来阻止出现异常:
if (GCSettings.LatencyMode == GCLatencyMode.NoGCRegion)
GC.EndNoGCRegion();
if GCSettings.LatencyMode = GCLatencyMode.NoGCRegion then
GC.EndNoGCRegion()
If GCSettings.LatencyMode = GCLatencyMode.NoGCRegion Then
GC.EndNoGCRegion()
End If