간단한 작업
이 문서에서는 동시성 런타임에서 간단한 작업의 역할을 설명합니다. 간단한 작업은 또는 concurrency::ScheduleGroup
개체에서 직접 예약하는 작업입니다concurrency::Scheduler
. 간단한 작업은 Windows API CreateThread 함수에 제공하는 함수와 유사합니다. 따라서 간단한 작업은 동시성 런타임의 예약 기능을 사용하도록 기존 코드를 조정할 때 유용합니다. 동시성 런타임 자체는 간단한 작업을 사용하여 비동기 에이전트를 예약하고 비동기 메시지 블록 간에 메시지를 보냅니다.
팁
동시성 런타임은 기본 스케줄러를 제공하므로 애플리케이션에서 스케줄러를 만들 필요가 없습니다. 작업 스케줄러는 애플리케이션의 성능을 미세 조정하는 데 도움이 되므로 동시성 런타임을 접하는 경우 PPL(병렬 패턴 라이브러리) 또는 비동기 에이전트 라이브러리로 시작하는 것이 좋습니다.
경량 작업은 비동기 에이전트 및 작업 그룹보다 오버헤드가 적습니다. 예를 들어 런타임은 간단한 작업이 완료되면 사용자에게 알리지 않습니다. 또한 런타임은 경량 작업에서 throw된 예외를 catch하거나 처리하지 않습니다. 예외 처리 및 간단한 작업에 대한 자세한 내용은 예외 처리를 참조 하세요.
대부분의 태스크에서는 복잡한 작업을 보다 기본적인 작업으로 더 쉽게 분리할 수 있으므로 작업 그룹 및 병렬 알고리즘과 같은 보다 강력한 기능을 사용하는 것이 좋습니다. 작업 그룹에 대한 자세한 내용은 작업 병렬 처리를 참조하세요. 병렬 알고리즘에 대한 자세한 내용은 병렬 알고리즘을 참조 하세요.
간단한 작업을 만들려면 동시성::ScheduleGroup::ScheduleTask, concurrency::CurrentScheduler::ScheduleTask 또는 concurrency::Scheduler::ScheduleTask 메서드를 호출합니다. 간단한 작업이 완료될 때까지 기다리려면 부모 스케줄러가 종료될 때까지 기다리거나 동시성::event 개체와 같은 동기화 메커니즘을 사용합니다.
예시
간단한 작업을 사용하도록 기존 코드를 조정하는 방법을 보여 주는 예제는 연습: 경량 작업을 사용하도록 기존 코드 조정을 참조 하세요.