2010-02-10 4 views

답변

7

Background 속성이 true으로 설정된 배경 스레드 (스레드 개체)가 이면 응용 프로그램이 종료되지 않도록 방지 할 수 있습니다.

모든 정상 (전경) 스레드가 종료되면 실행중인 백그라운드 스레드가 즉시 종료됩니다. 또한 AppDomain이 언로드되면 AppDomain의 모든 백그라운드 스레드가 즉시 중단됩니다.

ThreadPool에 의해 관리되는 스레드는 백그라운드 스레드입니다.

포 그라운드 스레드는 일반 스레드입니다.

주 스레드는 프로그램을 시작한 초기 스레드입니다. (Main 메서드를 실행하는 스레드

자세한 내용은 here을 참조하십시오.

+0

SLaks, 스레드 풀의 스레드 수에 제한이 있습니까? – SoftwareGeek

+0

예, 있습니다. 링크를 읽으십시오. 기본 제한은 CPU 당 250입니다. 'ThreadPool.SetMaxThreads'를 호출하여 변경할 수 있습니다. – SLaks

+1

내가 잘못 생각할 수도 있지만 한도가 코어 당 한도라고 생각했습니다. 또 다른 요점은 앱에 많은 스레드가 필요할 가능성이 거의 없다는 것입니다. 스레딩 오버 헤드를 추가하면됩니다. 코어에서 2/3 스레드를 경험할 때 좋은 선택 인 것 같습니다. –

0

는 배경 스레드는 애플리케이션의 UI 스레드에서 백그라운드에서 실행하는 스레드이며, 정확하게이다. winforms 응용 프로그램과 같은 UI 스레드는 UI 및 다른 사용자 상호 작용을 다시 그리는 역할을 담당하는 스레드입니다.

장기 실행 프로세스를 백그라운드 스레드로 이동하면 유용성이 향상됩니다. 여기 당신을 위해 스레딩에 좋은 intro document입니다.

관련 문제