다음을 통해 공유


System.Threading 네임스페이스

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

클래스

  클래스 설명
Public class AbandonedMutexException 스레드가 다른 스레드에서 해제하지 않고 종료하여 중단한 Mutex 개체를 가져오면 throw되는 예외입니다.
Public class AutoResetEvent 대기 중인 스레드에 이벤트가 발생했음을 알립니다. 이 클래스는 상속될 수 없습니다.
Public class CompressedStack 현재 스레드에서 압축된 스택을 설정 및 캡처하기 위한 메서드를 제공합니다. 이 클래스는 상속될 수 없습니다.
Public class EventWaitHandle 스레드 동기화 이벤트를 나타냅니다.
Public class ExecutionContext 현재 스레드의 실행 컨텍스트를 관리합니다. 이 클래스는 상속될 수 없습니다.
Public class HostExecutionContext 호스트 실행 컨텍스트를 캡슐화하여 스레드 간에 전파합니다.
Public class HostExecutionContextManager 공용 언어 런타임 호스트에서 실행 컨텍스트의 흐름 또는 마이그레이션에 참가할 수 있도록 하는 기능을 제공합니다.
Public class Interlocked 다중 스레드에서 공유하는 변수에 대한 원자 단위 연산을 제공합니다.
Public class ManualResetEvent 하나 이상의 대기 중인 스레드에 이벤트가 발생했음을 알립니다. 이 클래스는 상속될 수 없습니다.
Public class Monitor 개체에 대한 액세스를 동기화하는 메커니즘을 제공합니다.
Public class Mutex 프로세스 간 동기화에 사용할 수도 있는 동기화 기본 형식입니다.
Public class Overlapped Overlapped 인스턴스의 정보를 NativeOverlapped 구조체로 전송하는 메서드를 포함하여 Win32 OVERLAPPED 구조체의 관리되는 표현을 제공합니다.
Public class ReaderWriterLock 단일 작성기 및 다중 판독기를 지원하는 잠금을 정의합니다.
Public class RegisteredWaitHandle RegisterWaitForSingleObject을 호출할 때 등록된 핸들을 나타냅니다. 이 클래스는 상속될 수 없습니다.
Public class Semaphore 리소스 또는 리소스 풀에 동시에 액세스할 수 있는 스레드 수를 제한합니다.
Public class SemaphoreFullException 카운트가 이미 최대값에 도달한 세마포에서 System.Threading.Semaphore.Release 메서드를 호출하면 throw되는 예외입니다.
Public class SynchronizationContext 다양한 동기화 모델에서 동기화 컨텍스트를 전파하기 위한 기본 기능을 제공합니다.
Public class SynchronizationLockException 메서드가 지정된 Monitor에 대해 잠금을 소유하도록 호출자에게 요구하지만 해당 잠금을 소유하지 않는 호출자가 해당 메서드를 호출할 때 throw되는 예외입니다.
Public class Thread 스레드를 만들고 제어하며, 해당 속성을 설정하고, 상태를 가져옵니다.
Public class ThreadAbortException Abort 메서드를 호출할 때 throw되는 예외입니다. 이 클래스는 상속될 수 없습니다.
Public class ThreadExceptionEventArgs ThreadException 이벤트에 대한 데이터를 제공합니다.
Public class ThreadInterruptedException Thread가 대기 상태에서 중단되었을 때 throw되는 예외입니다.
Public class ThreadPool 작업 항목 게시, 비동기 I/O 처리, 다른 스레드 대신 기다리기 및 타이머 처리에 사용할 수 있는 스레드 풀을 제공합니다.
Public class ThreadStartException 내부 운영 체제 스레드가 사용자 코드를 실행할 수 없는 상태로 시작된 후 관리되는 스레드에서 실패가 발생한 경우에 throw되는 예외입니다.
Public class ThreadStateException Thread가 메서드 호출에 대한 잘못된 ThreadState인 경우 throw되는 예외입니다.
Public class Timeout 무기한의 시간을 지정하는 데 사용하는 상수가 포함되어 있습니다. 이 클래스는 상속될 수 없습니다.
Public class Timer 지정된 간격으로 메서드를 실행하는 메커니즘을 제공합니다. 이 클래스는 상속될 수 없습니다.
Public class WaitHandle 공유 리소스에 대한 단독 액세스를 기다리는 운영 체제 관련 개체를 캡슐화합니다.
Public class WaitHandleCannotBeOpenedException 존재하지 않는 시스템 뮤텍스 또는 세마포를 열려고 시도할 때 throw되는 예외입니다.

구조체

  구조체 설명
Public structure AsyncFlowControl 마이그레이션 복원 기능 또는 스레드 간 실행 컨텍스트 흐름에 대한 복원 기능을 제공합니다.
Public structure LockCookie 단일 작성기/다중 판독기 기능을 구현하는 잠금을 정의합니다. 이 클래스는 값 형식입니다.
Public structure NativeOverlapped 비관리 코드에서 볼 수 있고 같은 레이아웃을 끝에 예약 필드가 있는 Win32 OVERLAPPED 구조로 가지는 explicit 레이아웃을 제공합니다.

대리자

  대리자 설명
Public delegate ContextCallback 새 컨텍스트 내에서 호출될 메서드를 나타냅니다.
Public delegate IOCompletionCallback 스레드 풀의 I/O 연산이 완료되면 오류 코드, 바이트 수 및 겹쳐진 값 형식을 받습니다.
Public delegate ParameterizedThreadStart Thread에서 실행되는 메서드를 나타냅니다.
Public delegate SendOrPostCallback 메시지가 동기화 컨텍스트로 디스패치될 때 호출할 메서드를 나타냅니다.
Public delegate ThreadExceptionEventHandler ApplicationThreadException 이벤트를 처리할 메서드를 나타냅니다.
Public delegate ThreadStart Thread에서 실행되는 메서드를 나타냅니다.
Public delegate TimerCallback Timer의 호출을 처리하는 메서드를 나타냅니다.
Public delegate WaitCallback 스레드 풀 스레드에 의해 실행될 콜백 메서드를 나타냅니다.
Public delegate WaitOrTimerCallback WaitHandle이 신호를 받거나 시간 초과될 때 호출될 메서드를 나타냅니다.

열거형

  열거형 설명
Public enumeration ApartmentState Thread의 아파트 상태를 지정합니다.
Public enumeration EventResetMode EventWaitHandle이 신호를 받은 후 자동이나 수동으로 다시 설정되는지 여부를 나타냅니다.
Public enumeration ThreadPriority Thread의 예약 우선 순위를 지정합니다.
Public enumeration ThreadState Thread의 실행 상태를 지정합니다.