Microsoft.VisualStudio.Threading 네임스페이스

Microsoft. VisualStudio.Threading 네임스페이스에는 Visual Studio SDK 프로젝트에 사용할 API가 포함되어 있습니다. Visual Studio 비동기 프로그래밍에 이러한 API를 사용해야 합니다. 이렇게 하면 교착 상태를 방지하는 데 도움이 됩니다.

이 라이브러리는 .NET Framework TPL(작업 병렬 라이브러리)을 기반으로 합니다. 이 라이브러리에 대한 자세한 내용은 TPL(작업 병렬 라이브러리)을 참조하세요.

클래스

Name Description
AsyncAutoResetEvent

AutoResetEvent의 비동기 구현입니다.

AsyncBarrier

다른 모든 참가자가 신호를 보낼 때까지 신호기를 차단하는 비동기 장벽입니다.

AsyncCountdownEvent

비동기 스타일 카운트다운 이벤트입니다.

AsyncCrossProcessMutex

비동기적으로 입력할 수 있는 뮤텍스입니다.

AsyncLazy<T>

스레드로부터 안전하고, 지연되고, 비동기적으로 평가되는 값 팩터리입니다.

AsyncLazyInitializer

대리자가 한 번에 실행되도록 일부 부작용(일반적으로 초기화)이 있는 대리자를 지연적으로 실행합니다.

AsyncLocal<T>

동일한 호출 컨텍스트에서 검색할 수 있도록 참조를 저장합니다.

AsyncManualResetEvent

그 맛은 ManualResetEvent 비동기적으로 기다릴 수 있습니다.

AsyncQueue<T>

스레드로부터 안전하고 비동기적으로 큐에서 제거할 수 있는 큐입니다.

AsyncReaderWriterLock

단독 액세스에 대한 업그레이드가 가능한 동시 액세스, 배타적 액세스 또는 동시 액세스를 허용하는 비차단 잠금입니다.

AsyncReaderWriterLock.Awaiter

잠금에 대한 비동기 액세스를 관리합니다.

AsyncReaderWriterResourceLock<TMoniker,TResource>

동시 액세스, 배타적 액세스 또는 단독 액세스에 대한 업그레이드가 가능한 동시 액세스를 허용하는 비차단 잠금으로, 동시 또는 배타적 액세스를 위해 준비해야 하는 리소스에 대해 특별히 허용됩니다.

AsyncSemaphore

보다 편리한 릴리스 구문을 사용하는 비동 SemaphoreSlim 기 같은 클래스입니다.

AwaitExtensions

.NET 4.5에 대한 확장 메서드 및 대기 가능

CancellationTokenExtensions

확장에서 .CancellationToken

DelegatingJoinableTaskFactory

일부 작업을 기존 인스턴스에 위임하는 파생 형식에 대한 JoinableTaskFactory 기본 클래스입니다.

DispatcherExtensions

를 사용한 상호 운용JoinableTaskFactory성을 높이기 위해 WPF Dispatcher 대한 확장 메서드

HangReportContribution

집계 중단 보고서에 대한 기여입니다.

IllegalSemaphoreUsageException

계약을 ReentrantSemaphore 위반할 때 throw되는 예외입니다.

JoinableTask

비동기 작업을 추적하고 작업 완료를 위해 주 스레드를 동기적으로 차단하면서 교착 상태를 방지하기 위해 해당 작업을 조인하는 기능을 제공합니다.

JoinableTask<T>

비동기 작업을 추적하고 작업 완료를 위해 주 스레드를 동기적으로 차단하면서 교착 상태를 방지하기 위해 해당 작업을 조인하는 기능을 제공합니다.

JoinableTaskCollection

불완전한 JoinableTask 개체의 컬렉션입니다.

JoinableTaskContext

교착 상태를 방지하기 위해 조인 가능한 작업을 만들고 상호 작용할 수 있는 일반적인 컨텍스트입니다.

JoinableTaskContext.HangDetails

가능한 중단의 세부 정보를 캡슐화하는 클래스입니다. 이 JoinableTaskContext.HangDetails 클래스의 인스턴스는 중단 알림을 등록한 인스턴스에 전달 JoinableTaskContextNode 됩니다.

JoinableTaskContextException

제공된 구성이 올바르지 않거나 계약을 위반하도록 JoinableTaskContext 가상 메서드가 재정의될 때 throw되는 예외입니다. 이 예외는 catch하면 안 됩니다. 애플리케이션에 프로그래밍 오류가 있을 때 throw됩니다.

JoinableTaskContextNode

사용자 지정 가능한 인스턴스 원본 JoinableTaskFactory 입니다.

JoinableTaskFactory

태스크에 애플리케이션의 주 스레드가 필요하고 주 스레드 자체가 작업 완료 시 차단될 수 있는 경우 교착 상태를 완화할 수 있는 비동기 작업을 시작하기 위한 팩터리입니다.

NoMessagePumpSyncContext

동기적으로 대기 메서드를 차단하는 SynchronizationContext는 메시지 펌프를 통해 재진입을 허용하지 않습니다.

NonConcurrentSynchronizationContext

받은 순서대로 메시지를 실행하는 A SynchronizationContext 입니다.

ProgressWithCompletion<T>

또한 모든 보고서를 처리할 비동기 대기를 허용하는 증분 진행률 보고 메커니즘입니다.

ReentrantSemaphore

JoinableTaskFactory세마포에서 다른 슬롯을 사용하지 않고도 재진입을 허용하는 인식 세마포입니다.

SemaphoreFaultedException

오류가 발생한 ReentrantSemaphore 상태일 때 throw되는 예외입니다.

SingleThreadedSynchronizationContext

DispatcherSynchronizationContext 및 WindowsFormsSynchronizationContext와 비슷한 단일 스레드 동기화 컨텍스트입니다.

SingleThreadedSynchronizationContext.Frame

소유 스레드에서 메시지를 펌핑하기 위해 푸시 PushFrame(SingleThreadedSynchronizationContext+Frame) 할 수 있는 메시지 펌핑 프레임입니다.

ThreadingTools

스레드 간에 작업하기 위한 유틸리티 메서드입니다.

TplExtensions

작업 병렬 라이브러리에 대한 확장입니다.

구조체

Name Description
AsyncCrossProcessMutex.LockReleaser

뮤텍스를 해제하려면 해당 값에서 EnterAsync(TimeSpan) 반환된 값을 삭제해야 합니다.

AsyncLazy<T>.RevertRelevance

특정 AsyncLazy<T> 코드 블록과 생성된 코드 블록의 관련성을 JoinableTaskContext 숨기는 구조체입니다.

AsyncReaderWriterLock.Awaitable

비동기 잠금 요청에서 반환되는 대기 파일입니다.

AsyncReaderWriterLock.LockHandle

특정 잠금의 "public" 표현입니다.

AsyncReaderWriterLock.Releaser

삭제가 보류된 잠금을 해제하는 값입니다.

AsyncReaderWriterLock.Suppression

삭제가 호출자가 보유한 잠금의 가시성을 복원하는 값입니다.

AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceAwaitable

비동기 잠금 요청에서 반환되는 대기 파일입니다.

AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceAwaiter

잠금에 대한 비동기 액세스를 관리합니다.

AsyncReaderWriterResourceLock<TMoniker,TResource>.ResourceReleaser

삭제가 보류된 잠금을 해제하는 값입니다.

AsyncSemaphore.Releaser

삭제가 잠금 해제를 트리거하는 값입니다.

AwaitExtensions.AggregateExceptionAwaitable

모든 내부 예외를 Task throw하는 동안 대기할 준비를 하기 위한 결과 ConfigureAwaitForAggregateException(Task, Boolean) 입니다.

AwaitExtensions.AggregateExceptionAwaiter

모든 내부 예외를 Task throw하는 동안 대기할 준비를 하기 위한 결과 GetAwaiter() 입니다.

AwaitExtensions.ConfiguredTaskYieldAwaitable

항상 호출 비동기 메서드가 생성되도록 유도한 다음, 원래 SynchronizationContext메서드에서 즉시 다시 시작하는 대기 파일입니다.

AwaitExtensions.ConfiguredTaskYieldAwaiter

호출 비동기 메서드를 항상 생성한 다음 원래 SynchronizationContext메서드에서 즉시 다시 시작하는 대기자입니다.

AwaitExtensions.ExecuteContinuationSynchronouslyAwaitable

완료된 호출 스택에서 콜백을 동기적으로 실행하는 것과 선호도가 있는 작업 대기 가능 파일입니다.

AwaitExtensions.ExecuteContinuationSynchronouslyAwaitable<T>

완료된 호출 스택에서 콜백을 동기적으로 실행하는 것과 선호도가 있는 작업 대기 가능 파일입니다.

AwaitExtensions.ExecuteContinuationSynchronouslyAwaiter

완료된 호출 스택에서 콜백을 동기적으로 실행하는 것과 선호도가 있는 작업 대기자입니다.

AwaitExtensions.ExecuteContinuationSynchronouslyAwaiter<T>

완료된 호출 스택에서 콜백을 동기적으로 실행하는 것과 선호도가 있는 작업 대기자입니다.

AwaitExtensions.SynchronizationContextAwaiter

에서 GetAwaiter(SynchronizationContext)반환된 awaiter

AwaitExtensions.TaskSchedulerAwaitable

지정된 작업 스케줄러에서 연속 작업을 실행하는 대기 파일입니다.

AwaitExtensions.TaskSchedulerAwaiter

에서 GetAwaiter(TaskScheduler)반환된 awaiter

CancellationTokenExtensions.CombinedCancellationToken

CancellationToken 다른 여러 토큰을 결합하는 액세스 권한을 제공하며 해당 토큰을 편리하게 삭제할 수 있습니다CancellationTokenSource.

JoinableTaskCollection.JoinRelease

삭제가 작업을 취소하는 값입니다 Join() .

JoinableTaskContext.RevertRelevance

CallContext 및 SynchronizationContext 비동기/스레드 정적을 지우고 이 구조체가 삭제될 때 해당 값을 복원하는 구조체입니다.

JoinableTaskFactory.MainThreadAwaitable

주 스레드로의 비동기 전환을 용이하게 하는 대기 가능한 구조체입니다.

JoinableTaskFactory.MainThreadAwaiter

주 스레드로의 비동기 전환을 용이하게 하는 awaiter 구조체입니다.

JoinableTaskFactory.ProcessingDisabledOperation

이전 호출 DisableProcessing()의 효과를 되돌려 삭제하는 구조체입니다.

JoinableTaskInternals.JoinableTaskToken

Microsoft. VisualStudio.Threading 네임스페이스에는 Visual Studio SDK 프로젝트에 사용할 API가 포함되어 있습니다. Visual Studio 비동기 프로그래밍에 이러한 API를 사용해야 합니다. 이렇게 하면 교착 상태를 방지하는 데 도움이 됩니다.

이 라이브러리는 .NET Framework TPL(작업 병렬 라이브러리)을 기반으로 합니다. 이 라이브러리에 대한 자세한 내용은 TPL(작업 병렬 라이브러리)을 참조하세요.

ReentrantSemaphore.RevertRelevance

이 값이 삭제될 때까지 호출자가 입력했다는 ReentrantSemaphore 증거를 숨기는 구조체입니다.

SpecializedSyncContext

변경 내용을 SynchronizationContext적용하고 되돌리는 구조체입니다.

TplExtensions.NoThrowTaskAwaitable

대기할 때 작업을 래핑하고 예외를 throw하지 않는 대기 가능 파일입니다.

TplExtensions.NoThrowTaskAwaiter

대기할 때 작업을 래핑하고 예외를 throw하지 않는 awaiter입니다.

TplExtensions.NoThrowValueTaskAwaitable

대기할 때 작업을 래핑하고 예외를 throw하지 않는 대기 가능 파일입니다.

TplExtensions.NoThrowValueTaskAwaitable<TResult>

대기할 때 예외를 ValueTask<TResult> 래핑하고 throw하지 않는 대기 가능 파일입니다.

TplExtensions.NoThrowValueTaskAwaiter

대기할 때 작업을 래핑하고 예외를 throw하지 않는 awaiter입니다.

TplExtensions.NoThrowValueTaskAwaiter<TResult>

대기할 때 작업을 래핑하고 예외를 throw하지 않는 awaiter입니다.

인터페이스

Name Description
IAsyncDisposable

할당된 리소스를 해제하는 비동기 메서드를 정의합니다.

IHangReportContributor

중단을 분석할 때 유용할 수 있는 보고서를 생성하는 기능을 제공합니다.

열거형

Name Description
AsyncReaderWriterLock.LockFlags

기본 잠금 동작을 수정하는 플래그입니다.

AsyncReaderWriterResourceLock<TMoniker,TResource>.LockFlags

기본 잠금 동작을 수정하는 플래그입니다.

JoinableTaskCreationOptions

태스크를 만들고 실행하기 위한 선택적 동작을 제어하는 플래그를 지정합니다.

ReentrantSemaphore.ReentrancyMode

세마포에 ReentrantSemaphore 이미 있는 컨텍스트에서 세마포 요청을 할 때 동작할 수 있는 방법을 설명합니다.

RegistryChangeNotificationFilters

변경 시 알림을 생성하는 레지스트리 키 내의 다양한 데이터 형식입니다.

대리자

Name Description
AsyncEventHandler

비동기 이벤트 처리기입니다.

AsyncEventHandler<TEventArgs>

비동기 이벤트 처리기입니다.