스레딩 및 비동기 프로그래밍

스레딩 및 비동기 프로그래밍을 사용하면 앱이 UI를 차단하지 않고 병렬 스레드에서 비동기적으로 작업을 수행할 수 있습니다.

앱은 스레드 풀을 사용하여 병렬 스레드에서 비동기적으로 작업을 수행할 수 있습니다. 스레드 풀은 스레드 집합을 관리하고 큐를 사용하여 작업 항목을 사용할 수 있게 되면 스레드에 할당합니다. 스레드 풀은 UI를 차단하지 않고 확장 작업을 수행하는 데 사용할 수 있기 때문에 Windows 런타임 사용할 수 있는 비동기 프로그래밍 패턴과 유사하지만 스레드 풀은 비동기 프로그래밍 패턴보다 더 많은 제어를 제공하며 이를 사용하여 여러 작업 항목을 병렬로 완료할 수 있습니다. 스레드 풀을 사용하여 다음을 수행할 수 있습니다.

  • 작업 항목을 제출하고, 우선 순위를 제어하고, 작업 항목을 취소합니다.
  • 타이머 및 정기 타이머를 사용하여 작업 항목을 예약합니다.
  • 중요한 작업 항목에 대한 리소스를 따로 둡니다.
  • 명명된 이벤트 및 세마포에 대한 응답으로 작업 항목을 실행합니다.

스레드 풀은 스레드를 만들고 삭제하는 오버헤드를 줄이기 때문에 스레드를 관리하는 데 더 효율적입니다. 여러 CPU 코어에서 스레드를 최적화할 수 있으며, 앱과 백그라운드 작업이 실행 중인 경우 스레드 리소스의 균형을 맞출 수 있습니다. 스레드 관리의 메커니즘 대신 작업을 수행하는 코드를 작성하는 데 집중하기 때문에 기본 제공 스레드 풀을 사용하는 것이 편리합니다.

주제 설명
스레드 풀 사용에 대한 모범 사례 스레드 풀 작업에 대한 모범 사례입니다.
C# 또는 Visual Basic 비동기 API 호출 Windows 앱에서 C# 또는 Visual Basic으로 비동기 API를 사용하는 방법.
정기적인 작업 항목 만들기 주기적으로 반복되는 작업 항목을 만드는 방법입니다.
스레드 풀에 작업 항목 제출 스레드 풀에 작업 항목을 제출하여 별도의 스레드에서 작업을 수행하는 방법입니다.
타이머를 사용하여 작업 항목 제출 타이머가 경과한 후 실행되는 작업 항목을 만드는 방법입니다.