SafeBuffer 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
주의
SafeBuffer may be unavailable in future releases.
읽기 및 쓰기에 사용할 수 있는 제어되는 메모리 버퍼를 제공합니다. 제어되는 버퍼 외부의 메모리에 액세스(언더런 및 오버런)하려고 하면 예외가 발생됩니다.
public ref class SafeBuffer abstract : System::Runtime::InteropServices::SafeHandle
public ref class SafeBuffer abstract : Microsoft::Win32::SafeHandles::SafeHandleZeroOrMinusOneIsInvalid
[System.Security.SecurityCritical]
public abstract class SafeBuffer : System.Runtime.InteropServices.SafeHandle
public abstract class SafeBuffer : Microsoft.Win32.SafeHandles.SafeHandleZeroOrMinusOneIsInvalid
[System.Security.SecurityCritical]
public abstract class SafeBuffer : Microsoft.Win32.SafeHandles.SafeHandleZeroOrMinusOneIsInvalid
[System.Security.SecurityCritical]
[System.Obsolete("SafeBuffer may be unavailable in future releases.")]
public abstract class SafeBuffer : System.Runtime.InteropServices.SafeHandle
[<System.Security.SecurityCritical>]
type SafeBuffer = class
inherit SafeHandle
type SafeBuffer = class
inherit SafeHandleZeroOrMinusOneIsInvalid
[<System.Security.SecurityCritical>]
type SafeBuffer = class
inherit SafeHandleZeroOrMinusOneIsInvalid
[<System.Security.SecurityCritical>]
[<System.Obsolete("SafeBuffer may be unavailable in future releases.")>]
type SafeBuffer = class
inherit SafeHandle
Public MustInherit Class SafeBuffer
Inherits SafeHandle
Public MustInherit Class SafeBuffer
Inherits SafeHandleZeroOrMinusOneIsInvalid
- 상속
- 상속
- 상속
- 파생
- 특성
설명
인스턴스를 SafeBuffer.Initialize 사용하려면 먼저 메서드를 SafeBuffer호출해야 합니다. 개체의 인스턴스를 정적 변수에 저장할 때 경합을 SafeBuffer 방지하려면 다음 방법 중 하나를 사용해야 합니다.
를 게시할 때 잠금을 만듭니다 SafeBuffer.
지역 변수를 만들고, 를 SafeBuffer초기화한 다음, 메서드를 사용하여 Interlocked.CompareExchange 정적 변수에 를 할당 SafeBuffer 합니다.
참고
정적 클래스 생성자의 할당은 암시적으로 잠깁니다.
생성자
SafeBuffer(Boolean) |
사용되지 않음.
SafeBuffer 클래스의 새 인스턴스를 만들고 버퍼 핸들이 안정적으로 해제될지 여부를 지정합니다. |
필드
handle |
사용되지 않음.
래핑할 핸들을 지정합니다. (다음에서 상속됨 SafeHandle) |
속성
ByteLength |
사용되지 않음.
버퍼의 크기(바이트)를 가져옵니다. |
IsClosed |
사용되지 않음.
핸들이 닫혔는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 SafeHandle) |
IsInvalid |
사용되지 않음.
핸들이 잘못되었는지 여부를 나타내는 값을 가져옵니다. |
IsInvalid |
사용되지 않음.
핸들이 잘못되었는지 여부를 나타내는 값을 가져옵니다. (다음에서 상속됨 SafeHandleZeroOrMinusOneIsInvalid) |
메서드
AcquirePointer(Byte*) |
사용되지 않음.
SafeBuffer 개체에서 메모리 블록에 대한 포인터를 가져옵니다. |
Close() |
사용되지 않음.
핸들의 리소스를 해제하도록 표시합니다. (다음에서 상속됨 SafeHandle) |
DangerousAddRef(Boolean) |
사용되지 않음.
SafeHandle 인스턴스의 참조 카운터의 값을 수동으로 증가시킵니다. (다음에서 상속됨 SafeHandle) |
DangerousGetHandle() |
사용되지 않음.
handle 필드의 값을 반환합니다. (다음에서 상속됨 SafeHandle) |
DangerousRelease() |
사용되지 않음.
SafeHandle 인스턴스의 참조 카운터의 값을 수동으로 감소시킵니다. (다음에서 상속됨 SafeHandle) |
Dispose() |
사용되지 않음.
SafeHandle 클래스에서 사용하는 모든 리소스를 해제합니다. (다음에서 상속됨 SafeHandle) |
Dispose(Boolean) |
사용되지 않음.
일반적인 삭제 작업을 수행할지 여부를 지정하여 SafeHandle 클래스에서 사용하는 관리되지 않는 리소스를 해제합니다. (다음에서 상속됨 SafeHandle) |
Equals(Object) |
사용되지 않음.
지정된 개체가 현재 개체와 같은지 확인합니다. (다음에서 상속됨 Object) |
GetHashCode() |
사용되지 않음.
기본 해시 함수로 작동합니다. (다음에서 상속됨 Object) |
GetType() |
사용되지 않음.
현재 인스턴스의 Type을 가져옵니다. (다음에서 상속됨 Object) |
Initialize(UInt32, UInt32) |
사용되지 않음.
지정된 요소 수 및 요소 크기를 사용하여 메모리 버퍼의 할당 크기를 지정합니다. SafeBuffer 인스턴스를 사용하려면 먼저 이 메서드를 호출해야 합니다. |
Initialize(UInt64) |
사용되지 않음.
메모리 영역의 할당 크기(바이트)를 정의합니다. SafeBuffer 인스턴스를 사용하려면 먼저 이 메서드를 호출해야 합니다. |
Initialize<T>(UInt32) |
사용되지 않음.
값 형식의 수를 지정하여 메모리 영역의 할당 크기를 정의합니다. SafeBuffer 인스턴스를 사용하려면 먼저 이 메서드를 호출해야 합니다. |
MemberwiseClone() |
사용되지 않음.
현재 Object의 단순 복사본을 만듭니다. (다음에서 상속됨 Object) |
Read<T>(UInt64) |
사용되지 않음.
메모리의 지정된 오프셋 위치에서 값 형식을 읽습니다. |
ReadArray<T>(UInt64, T[], Int32, Int32) |
사용되지 않음.
메모리의 오프셋 시작 위치에서 지정된 수의 값 형식을 읽어서 이를 배열의 인덱스 시작 위치에 씁니다. |
ReadSpan<T>(UInt64, Span<T>) |
사용되지 않음.
오프셋에서 시작하는 메모리에서 값 형식을 읽고 범위에 씁니다. 읽을 값 형식의 수는 범위의 길이에 따라 결정됩니다. |
ReleaseHandle() |
사용되지 않음.
파생 클래스에서 재정의된 경우 핸들을 해제하는 데 필요한 코드를 실행합니다. (다음에서 상속됨 SafeHandle) |
ReleasePointer() |
사용되지 않음.
AcquirePointer(Byte*) 메서드에서 가져온 포인터를 해제합니다. |
SetHandle(IntPtr) |
사용되지 않음.
지정된 기존 핸들에 대한 핸들을 설정합니다. (다음에서 상속됨 SafeHandle) |
SetHandleAsInvalid() |
사용되지 않음.
더 이상 사용되지 않는 핸들로 표시합니다. (다음에서 상속됨 SafeHandle) |
ToString() |
사용되지 않음.
현재 개체를 나타내는 문자열을 반환합니다. (다음에서 상속됨 Object) |
Write<T>(UInt64, T) |
사용되지 않음.
메모리의 지정된 위치에 값 형식을 씁니다. |
WriteArray<T>(UInt64, T[], Int32, Int32) |
사용되지 않음.
입력 배열의 지정된 위치에서 시작하여 바이트를 읽어 메모리 위치에 지정된 수의 값 형식을 씁니다. |
WriteSpan<T>(UInt64, ReadOnlySpan<T>) |
사용되지 않음.
읽기 전용 범위에서 메모리 위치에 값 형식을 씁니다. |
적용 대상
.NET