GC.WaitForFullGCApproach 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
공용 언어 런타임에 의한 전체 차단 가비지 수집이 임박했는지 여부를 확인하기 위해 등록된 알림의 상태를 반환합니다.
오버로드
| Name | Description |
|---|---|
| WaitForFullGCApproach() |
공용 언어 런타임에 의한 전체 차단 가비지 수집이 임박했는지 여부를 확인하기 위해 등록된 알림의 상태를 반환합니다. |
| WaitForFullGCApproach(Int32) |
지정된 시간 제한 기간에 공용 언어 런타임에 의한 전체 차단 가비지 수집이 임박했는지 여부를 확인하기 위한 등록된 알림의 상태를 반환합니다. |
| WaitForFullGCApproach(TimeSpan) |
지정된 시간 제한 기간에 공용 언어 런타임에 의한 전체 차단 가비지 수집이 임박했는지 여부를 확인하기 위한 등록된 알림의 상태를 반환합니다. |
WaitForFullGCApproach()
- Source:
- GC.CoreCLR.cs
- Source:
- GC.CoreCLR.cs
- Source:
- GC.CoreCLR.cs
- Source:
- GC.CoreCLR.cs
- Source:
- GC.CoreCLR.cs
공용 언어 런타임에 의한 전체 차단 가비지 수집이 임박했는지 여부를 확인하기 위해 등록된 알림의 상태를 반환합니다.
public:
static GCNotificationStatus WaitForFullGCApproach();
public static GCNotificationStatus WaitForFullGCApproach();
[System.Security.SecurityCritical]
public static GCNotificationStatus WaitForFullGCApproach();
static member WaitForFullGCApproach : unit -> GCNotificationStatus
[<System.Security.SecurityCritical>]
static member WaitForFullGCApproach : unit -> GCNotificationStatus
Public Shared Function WaitForFullGCApproach () As GCNotificationStatus
반품
등록된 가비지 수집 알림의 상태입니다.
- 특성
예제
다음 예제에서는이 메서드를 사용 하 여 전체 차단 가비지 수집이 접근 하는지 여부를 확인 하는 방법을 보여 줍니다. 알림 Succeeded상태가 될 때마다 사용자 메서드 OnFullGCApproachNotify 가 호출되어 접근 컬렉션에 대한 응답으로 작업을 수행합니다. 이 코드 예제는 가비지 수집 알림 토픽에 제공되는 더 큰 예제의 일부입니다.
// Check for a notification of an approaching collection.
GCNotificationStatus s = GC.WaitForFullGCApproach();
if (s == GCNotificationStatus.Succeeded)
{
Console.WriteLine("GC Notification raised.");
OnFullGCApproachNotify();
}
else if (s == GCNotificationStatus.Canceled)
{
Console.WriteLine("GC Notification cancelled.");
break;
}
else
{
// This can occur if a timeout period
// is specified for WaitForFullGCApproach(Timeout)
// or WaitForFullGCComplete(Timeout)
// and the time out period has elapsed.
Console.WriteLine("GC Notification not applicable.");
break;
}
// Check for a notification of an approaching collection.
match GC.WaitForFullGCApproach() with
| GCNotificationStatus.Succeeded ->
printfn "GC Notification raised."
onFullGCApproachNotify ()
// Check for a notification of a completed collection.
match GC.WaitForFullGCComplete() with
| GCNotificationStatus.Succeeded ->
printfn "GC Notification raised."
onFullGCCompleteEndNotify ()
| GCNotificationStatus.Canceled ->
printfn "GC Notification cancelled."
broken <- true
| _ ->
// Could be a time out.
printfn "GC Notification not applicable."
broken <- true
| GCNotificationStatus.Canceled ->
printfn "GC Notification cancelled."
broken <- true
| _ ->
// This can occur if a timeout period
// is specified for WaitForFullGCApproach(Timeout)
// or WaitForFullGCComplete(Timeout)
// and the time out period has elapsed.
printfn "GC Notification not applicable."
broken <- true
' Check for a notification of an approaching collection.
Dim s As GCNotificationStatus = GC.WaitForFullGCApproach
If (s = GCNotificationStatus.Succeeded) Then
Console.WriteLine("GC Notification raised.")
OnFullGCApproachNotify()
ElseIf (s = GCNotificationStatus.Canceled) Then
Console.WriteLine("GC Notification cancelled.")
Exit While
Else
' This can occur if a timeout period
' is specified for WaitForFullGCApproach(Timeout)
' or WaitForFullGCComplete(Timeout)
' and the time out period has elapsed.
Console.WriteLine("GC Notification not applicable.")
Exit While
End If
설명
이 메서드에서 GCNotificationStatus 반환된 열거형을 사용하여 메서드를 사용하여 RegisterForFullGCNotification 등록된 현재 가비지 수집 알림의 상태를 확인합니다. 이 메서드를 WaitForFullGCComplete 사용하여 전체 가비지 수집이 완료되었는지 여부를 확인할 수도 있습니다.
열거형이 반환 Succeeded되면 추가 개체가 할당되지 않도록 방지하고 메서드를 사용하여 컬렉션을 직접 Collect 유도하는 등의 작업을 수행할 수 있습니다. 알림은 전체 가비지 수집이 발생하도록 보장하지 않으며, 전체 가비지 수집이 발생할 수 있는 임계값에 도달한 조건만 보장합니다.
이 메서드는 가비지 수집 알림을 가져올 때까지 무기한 대기합니다. 알림을 가져올 수 없는 경우 반환할 메서드의 제한 시간을 지정하려면 메서드 오버로드를 GC.WaitForFullGCApproach(Int32) 사용합니다. 제한 시간을 지정하지 않고 이 메서드를 호출하는 경우 기본 설정보다 오래 기다리는 경우 메서드를 호출 CancelFullGCNotification 할 수 있습니다.
전체 가비지 수집이 있는지 확인하려면 메서드를 호출 WaitForFullGCComplete 하여 이 메서드를 따라야 합니다. 이 메서드만 호출하면 확정되지 않은 결과가 발생합니다.
추가 정보
적용 대상
WaitForFullGCApproach(Int32)
- Source:
- GC.CoreCLR.cs
- Source:
- GC.CoreCLR.cs
- Source:
- GC.CoreCLR.cs
- Source:
- GC.CoreCLR.cs
- Source:
- GC.CoreCLR.cs
지정된 시간 제한 기간에 공용 언어 런타임에 의한 전체 차단 가비지 수집이 임박했는지 여부를 확인하기 위한 등록된 알림의 상태를 반환합니다.
public:
static GCNotificationStatus WaitForFullGCApproach(int millisecondsTimeout);
public static GCNotificationStatus WaitForFullGCApproach(int millisecondsTimeout);
[System.Security.SecurityCritical]
public static GCNotificationStatus WaitForFullGCApproach(int millisecondsTimeout);
static member WaitForFullGCApproach : int -> GCNotificationStatus
[<System.Security.SecurityCritical>]
static member WaitForFullGCApproach : int -> GCNotificationStatus
Public Shared Function WaitForFullGCApproach (millisecondsTimeout As Integer) As GCNotificationStatus
매개 변수
- millisecondsTimeout
- Int32
알림 상태를 얻을 수 있을 때까지 대기하는 시간입니다. 무기한 대기할 -1 지정합니다.
반품
등록된 가비지 수집 알림의 상태입니다.
- 특성
예외
millisecondsTimeout 는 음수가 아니거나 Int32.MaxValue 또는 -1보다 작거나 같아야 합니다.
설명
이 메서드에서 GCNotificationStatus 반환된 열거형을 사용하여 메서드를 사용하여 RegisterForFullGCNotification 등록된 현재 가비지 수집 알림의 상태를 확인합니다. 이 메서드를 WaitForFullGCComplete 사용하여 전체 가비지 수집이 완료되었는지 여부를 확인할 수도 있습니다.
이 메서드는 지정한 값에 관계없이 가비지 수집 알림 상태를 가져올 때마다 즉시 반환됩니다 millisecondsTimeout. 시간이 초과되기 전에 millisecondsTimeout 가비지 수집 알림 상태를 가져오지 않으면 이 메서드가 반환됩니다 NotApplicable.
열거형이 반환 Succeeded되면 추가 개체가 할당되지 않도록 방지하고 메서드를 사용하여 컬렉션을 직접 Collect 유도하는 등의 작업을 수행할 수 있습니다. 알림은 전체 가비지 수집이 발생하도록 보장하지 않으며, 전체 가비지 수집이 발생할 수 있는 임계값에 도달한 조건만 보장합니다.
제한 시간이 경과될 때까지 기다릴 수 없는 경우 메서드를 호출 CancelFullGCNotification 할 수 있습니다.
전체 가비지 수집이 있는지 확인하려면 메서드를 호출 WaitForFullGCComplete 하여 이 메서드를 따라야 합니다. 이 메서드만 호출하면 확정되지 않은 결과가 발생합니다.
추가 정보
적용 대상
WaitForFullGCApproach(TimeSpan)
- Source:
- GC.cs
- Source:
- GC.cs
- Source:
- GC.cs
- Source:
- GC.cs
- Source:
- GC.cs
지정된 시간 제한 기간에 공용 언어 런타임에 의한 전체 차단 가비지 수집이 임박했는지 여부를 확인하기 위한 등록된 알림의 상태를 반환합니다.
public:
static GCNotificationStatus WaitForFullGCApproach(TimeSpan timeout);
public static GCNotificationStatus WaitForFullGCApproach(TimeSpan timeout);
static member WaitForFullGCApproach : TimeSpan -> GCNotificationStatus
Public Shared Function WaitForFullGCApproach (timeout As TimeSpan) As GCNotificationStatus
매개 변수
- timeout
- TimeSpan
전체 GC 접근 방식을 기다리는 시간 제한
반품
등록된 전체 GC 알림의 상태입니다.