System.Threading 네임스페이스

다중 스레드 프로그래밍을 사용하도록 설정하는 클래스 및 인터페이스를 제공합니다. 이 네임스페이스에는 스레드 활동 동기화 및 데이터 액세스(, , , Mutex등)를 위한 클래스 외에도 시스템에서 제공하는 스레드 풀을 사용할 수 있는 클래스와 Monitor 스레드 풀 스레드에서 콜백 메서드를 실행하는 클래스가 포함 InterlockedAutoResetEvent됩니다. ThreadPoolTimer

클래스

Name Description
AbandonedMutexException

한 스레드가 다른 스레드가 해제하지 않고 종료하여 중단한 개체를 획득 Mutex 할 때 throw되는 예외입니다.

AsyncLocal<T>

지정된 비동기 제어 흐름(예: 비동기 메서드)에 로컬인 앰비언트 데이터를 나타냅니다.

AutoResetEvent

신호를 받으면 대기 중인 단일 스레드를 해제한 다음 자동으로 다시 설정하는 스레드 동기화 이벤트를 나타냅니다. 이 클래스는 상속할 수 없습니다.

Barrier

여러 태스크가 여러 단계를 통해 알고리즘을 병렬로 공동으로 작업할 수 있도록 합니다.

BarrierPostPhaseException

사후 단계 작업이 실패할 때 throw되는 예외입니다 Barrier .

CancellationTokenSource

CancellationToken 취소해야 한다는 신호를 표시합니다.

CompressedStack

현재 스레드에서 압축된 스택을 설정하고 캡처하는 메서드를 제공합니다. 이 클래스는 상속할 수 없습니다.

CountdownEvent

개수가 0에 도달하면 신호를 받은 동기화 기본 형식을 나타냅니다.

EventWaitHandle

스레드 동기화 이벤트를 나타냅니다.

ExecutionContext

현재 스레드의 실행 컨텍스트를 관리합니다. 이 클래스는 상속할 수 없습니다.

HostExecutionContext

스레드 간에 호스트 실행 컨텍스트를 캡슐화하고 전파합니다.

HostExecutionContextManager

공용 언어 런타임 호스트가 실행 컨텍스트의 흐름 또는 마이그레이션에 참여할 수 있도록 하는 기능을 제공합니다.

Interlocked

여러 스레드에서 공유하는 변수에 대한 원자성 연산을 제공합니다.

LazyInitializer

지연 초기화 루틴을 제공합니다.

LockRecursionException

잠금에 재귀 항목이 있을 때 throw되는 예외는 잠금에 대한 재귀 정책과 호환되지 않습니다.

ManualResetEvent

신호를 받을 때 수동으로 다시 설정해야 하는 스레드 동기화 이벤트를 나타냅니다. 이 클래스는 상속할 수 없습니다.

ManualResetEventSlim

신호를 받을 때 수동으로 다시 설정해야 하는 스레드 동기화 이벤트를 나타냅니다. 이 클래스는 간단한 대안 ManualResetEvent입니다.

Monitor

개체에 대한 액세스를 동기화하는 메커니즘을 제공합니다.

Mutex

프로세스 간 동기화에도 사용할 수 있는 동기화 기본 형식입니다.

Overlapped

인스턴스에서 구조체로 정보를 전송하는 메서드를 포함하여 Win32 OVERLAPPED 구조체의 Overlapped 관리되는 표현을 NativeOverlapped 제공합니다.

PreAllocatedOverlapped

네이티브 겹치는 I/O 작업에 대해 미리 할당된 상태를 나타냅니다.

ReaderWriterLock

단일 작성기 및 여러 판독기를 지원하는 잠금을 정의합니다.

ReaderWriterLockSlim

여러 스레드에서 읽기 또는 쓰기 전용 액세스를 허용하는 리소스에 대한 액세스를 관리하는 데 사용되는 잠금을 나타냅니다.

RegisteredWaitHandle

를 호출 RegisterWaitForSingleObject(WaitHandle, WaitOrTimerCallback, Object, UInt32, Boolean)할 때 등록된 핸들을 나타냅니다. 이 클래스는 상속할 수 없습니다.

Semaphore

리소스 또는 리소스 풀에 동시에 액세스할 수 있는 스레드 수를 제한합니다.

SemaphoreFullException

개수가 이미 최대인 세마포에서 메서드를 호출할 때 Release throw되는 예외입니다.

SemaphoreSlim

리소스 또는 리소스 풀에 Semaphore 동시에 액세스할 수 있는 스레드 수를 제한하는 간단한 대안을 나타냅니다.

SynchronizationContext

다양한 동기화 모델에서 동기화 컨텍스트를 전파하기 위한 기본 기능을 제공합니다.

SynchronizationLockException

메서드가 지정된 모니터에서 호출자가 잠금을 소유하도록 요구하고 해당 잠금을 소유하지 않는 호출자가 메서드를 호출할 때 throw되는 예외입니다.

Thread

스레드를 만들고 제어하고, 우선 순위를 설정하고, 상태를 가져옵니다.

ThreadAbortException

메서드를 호출할 때 throw되는 예외입니다 Abort(Object) . 이 클래스는 상속할 수 없습니다.

ThreadExceptionEventArgs

ThreadException 이벤트에 대한 데이터를 제공합니다.

ThreadInterruptedException

대기 중인 상태에서 중단된 경우 throw Thread 되는 예외입니다.

ThreadLocal<T>

데이터의 스레드 로컬 스토리지를 제공합니다.

ThreadPool

작업을 실행하고, 작업 항목을 게시하고, 비동기 I/O를 처리하고, 다른 스레드를 대신하여 대기하고, 타이머를 처리하는 데 사용할 수 있는 스레드 풀을 제공합니다.

ThreadPoolBoundHandle

시스템 스레드 풀에 바인딩되고 하위 수준 구성 요소가 비동기 I/O 작업에 대한 알림을 받을 수 있도록 하는 I/O 핸들을 나타냅니다.

ThreadStartException

기본 운영 체제 스레드가 시작된 후 관리되는 스레드에서 오류가 발생하지만 스레드가 사용자 코드를 실행할 준비가 되기 전에 throw되는 예외입니다.

ThreadStateException

메서드 호출에 대해 잘못된 Thread 경우 throw ThreadState 되는 예외입니다.

Timeout

무한 시간 제한 간격을 지정하는 상수를 포함합니다. 이 클래스는 상속할 수 없습니다.

Timer

지정된 간격으로 스레드 풀 스레드에서 메서드를 실행하는 메커니즘을 제공합니다. 이 클래스는 상속할 수 없습니다.

Volatile

휘발성 메모리 작업을 수행하기 위한 메서드를 포함합니다.

WaitHandle

공유 리소스에 대한 단독 액세스를 기다리는 운영 체제별 개체를 캡슐화합니다.

WaitHandleCannotBeOpenedException

존재하지 않는 시스템 뮤텍스, 세마포 또는 이벤트 대기 핸들을 열려고 할 때 throw되는 예외입니다.

WaitHandleExtensions

대기 핸들에 대한 안전한 핸들을 사용하기 위한 편리한 메서드를 제공합니다.

구조체

Name Description
AsyncFlowControl

스레드 간 실행 컨텍스트의 마이그레이션 또는 흐름을 복원하는 기능을 제공합니다.

AsyncLocalValueChangedArgs<T>

변경 알림을 등록하는 AsyncLocal<T> 인스턴스에 데이터 변경 정보를 제공하는 클래스입니다.

CancellationToken

작업을 취소해야 한다는 알림을 전파합니다.

CancellationTokenRegistration

에 등록된 콜백 대리자를 CancellationToken나타냅니다.

LockCookie

단일 작성기/다중 판독기 의미 체계를 구현하는 잠금을 정의합니다. 값 형식입니다.

NativeOverlapped

관리되지 않는 코드에서 볼 수 있으며 Win32 OVERLAPPED 구조체와 동일한 레이아웃과 끝에 추가 예약 필드가 있는 명시적 레이아웃을 제공합니다.

SpinLock

잠금을 획득하려는 스레드가 잠금을 사용할 수 있게 될 때까지 반복적으로 확인하는 루프에서 대기하는 상호 제외 잠금 기본 형식을 제공합니다.

SpinWait

스핀 기반 대기를 지원합니다.

열거형

Name Description
ApartmentState

Thread아파트 상태를 지정합니다.

EventResetMode

신호를 받은 후 EventWaitHandle 자동으로 또는 수동으로 다시 설정되는지 여부를 나타냅니다.

LazyThreadSafetyMode

Lazy<T> 인스턴스가 여러 스레드 간에 액세스를 동기화하는 방법을 지정합니다.

LockRecursionPolicy

동일한 스레드에서 잠금을 여러 번 입력할 수 있는지 여부를 지정합니다.

ThreadPriority

Thread예약 우선 순위를 지정합니다.

ThreadState

Thread실행 상태를 지정합니다.

대리자

Name Description
ContextCallback

새 컨텍스트 내에서 호출할 메서드를 나타냅니다.

IOCompletionCallback

스레드 풀에서 I/O 작업이 완료되면 오류 코드, 바이트 수 및 겹치는 값 형식을 받습니다.

ParameterizedThreadStart

에서 실행되는 메서드를 Thread나타냅니다.

SendOrPostCallback

메시지를 동기화 컨텍스트로 디스패치할 때 호출할 메서드를 나타냅니다.

ThreadExceptionEventHandler

의 이벤트를 처리할 메서드를 ThreadExceptionApplication나타냅니다.

ThreadStart

에서 실행되는 메서드를 Thread나타냅니다.

TimerCallback

에서 호출을 처리하는 메서드를 Timer나타냅니다.

WaitCallback

스레드 풀 스레드에서 실행할 콜백 메서드를 나타냅니다.

WaitOrTimerCallback

신호가 전송되거나 시간이 초과될 때 호출할 메서드를 WaitHandle 나타냅니다.