구성 요소에서 다중 스레딩
BackgroundWorker 구성 요소는 System.Threading 네임스페이스의 스레딩 기능 중 일부를 구현합니다. BackgroundWorker 구성 요소를 사용하면 다중 스레딩 기능을 더 쉽게 구현할 수 있습니다. 자세한 내용은 BackgroundWorker 구성 요소 개요를 참조하십시오.
다중 스레딩 또는 자유 스레딩은 응용 프로그램에서 작업의 여러 스레드를 동시에 실행할 수 있는 기능입니다. 다중 스레드 응용 프로그램의 예로는, 첫 번째 스레드에서 사용자 입력을 받고 두 번째 스레드에서는 여러 가지 복잡한 계산을 수행하고 세 번째 스레드에서는 데이터베이스를 업데이트하는 프로그램이 있습니다. 단일 스레드 응용 프로그램을 사용할 때는 데이터베이스 업데이트나 계산 작업이 끝날 때까지 사용자가 기다려야 할 수도 있습니다. 다중 스레드 응용 프로그램에서는 이러한 작업이 백그라운드에서 수행되므로 사용자가 시간을 낭비하지 않아도 됩니다.
다중 스레딩을 구성 요소 프로그래밍에서 강력한 도구로 사용할 수 있습니다. 다중 스레드 구성 요소를 작성하면 백그라운드에서 복잡한 계산을 수행하는 동안 UI(사용자 인터페이스)에서는 여전히 사용자 입력에 응답할 수 있는 구성 요소를 만들 수 있습니다.
다중 스레딩이 강력한 도구이긴 하지만 제대로 적용하기가 어려울 수도 있습니다. 다중 스레드 코드를 잘못 구현하면 응용 프로그램 성능이 떨어지거나 응용 프로그램 실행이 중지될 수도 있습니다. 다음 항목에서는 다중 스레드 프로그램을 작성할 때 고려할 사항과 최선의 구현 방법을 소개합니다.
.NET Framework에서는 구성 요소의 다중 스레딩에 관한 몇 가지 옵션을 제공합니다. System.Threading 네임스페이스의 기능은 그 중 한 가지 옵션입니다. 이벤트 기반 비동기 패턴도 한 가지 옵션입니다. BackgroundWorker 구성 요소는 비동기 패턴을 구현한 것이며, 편의를 위해 구성 요소에 캡슐화된 고급 기능을 제공합니다.
단원 내용
- 구성 요소에 대해 System.Threading을 사용한 다중 스레드 프로그래밍
System.Threading 네임스페이스를 사용하여 다중 스레드 구성 요소를 만드는 방법을 설명합니다.
참조
BackgroundWorker 클래스
별도의 전용 스레드에서 작업을 실행할 수 있습니다.Thread
.NET Framework 참조에 나오는 구문 및 멤버에 관한 정보를 제공합니다.
관련 단원
이벤트 기반 비동기 패턴을 사용한 다중 스레드 프로그래밍
비동기 기능을 가진 구성 요소를 패키지하는 표준화된 방법을 설명합니다.Multithreading in Visual Basic
Visual Basic에서 다중 스레딩을 사용하는 방법을 설명하는 여러 항목에 대한 링크를 제공합니다.관리되는 스레딩을 구현하는 최선의 방법
관리되는 스레딩 기능을 사용하는 방법을 설명합니다.
Topic | Location |
---|---|
스레딩 샘플 | C# Sample Applications |
스레딩 샘플 | C# 샘플 응용 프로그램 |