다음을 통해 공유


작업 병렬 라이브러리

TPL(작업 병렬 라이브러리)은 .NET Framework 버전 4의 System.ThreadingSystem.Threading.Tasks 네임스페이스에 포함된 공용 형식 및 API의 집합입니다. TPL의 목적은 응용 프로그램에 병렬 처리 및 동시성 기능을 추가하는 과정을 단순화하여 개발자가 더 생산적으로 작업할 수 있도록 하는 것입니다. TPL은 사용 가능한 모든 프로세서를 최대한 효율적으로 사용할 수 있도록 동시성 수준을 대폭 높여 줍니다. 또한 TPL은 작업의 분할, ThreadPool에 대한 스레드 예약, 취소 지원, 상태 관리 및 기타 하위 수준 세부 정보를 처리합니다. TPL을 사용하면 프로그램의 설계 목적인 작업을 처리하는 데 집중하면서 코드의 성능을 최대화할 수 있습니다.

.NET Framework 4부터는 다중 스레드 및 병렬 코드를 작성하는 데 TPL을 사용하는 것이 좋습니다. 그러나 코드에 따라서는 병렬화가 적합하지 않을 수도 있습니다. 예를 들어 루프에서 각 반복에 대해 수행할 작업의 양이 많지 않거나 실행되는 반복 횟수가 많지 않으면 병렬화에 따른 오버헤드로 인해 코드의 실행 속도가 오히려 더 느려질 수 있습니다. 또한 병렬화를 사용하면 다중 스레드 코드의 경우와 마찬가지로 프로그램 실행이 복잡해질 수 있습니다. TPL은 다중 스레드 시나리오를 단순화하기는 하지만 TPL을 효과적으로 사용하려면 잠금, 교착 상태 및 경합 조건과 같이 스레딩과 관련된 기본적인 개념을 이해하고 있는 것이 좋습니다. 기본적인 병렬 컴퓨팅 개념에 대한 자세한 내용은 MSDN의 Parallel Computer Developer Center를 참조하십시오.

관련 항목

제목

설명

데이터 병렬 처리(작업 병렬 라이브러리)

병렬 for 및 foreach(Visual Basic의 경우 For 및 For Each) 루프를 만드는 방법을 설명합니다.

작업 병렬 처리(작업 병렬 라이브러리)

Parallel.Invoke를 사용하여 암시적으로 또는 Task 개체를 직접 사용하여 명시적으로 작업을 만들고 실행하는 방법을 설명합니다.

TPL과 기타 비동기 패턴

.NET의 기타 비동기 패턴과 함께 TPL을 사용하는 방법을 설명합니다.

데이터 및 작업 병렬 처리에서 발생할 수 있는 문제

몇 가지 일반적인 실수 및 이를 방지하는 방법을 설명합니다.

PLINQ(병렬 LINQ)

LINQ 쿼리를 사용하여 데이터 병렬 처리를 구현하는 방법을 설명합니다.

.NET Framework의 병렬 프로그래밍

.NET 병렬 프로그래밍의 최상위 노드입니다.