> 백엔드 개발 > C++ > Windows 10의 간단한 C 프로그램에 추가 스레드가 있는 이유는 무엇입니까?

Windows 10의 간단한 C 프로그램에 추가 스레드가 있는 이유는 무엇입니까?

Linda Hamilton
풀어 주다: 2024-10-27 17:59:01
원래의
240명이 탐색했습니다.

Why Are There Extra Threads in Simple C   Programs on Windows 10?

Windows 10의 스레드 풀 작동

Windows 10이 겉으로는 단순한 C 프로그램에 추가 스레드를 도입하는 이유는 무엇입니까? 이 질문은 Windows 7과 Windows 10에서 이러한 프로그램의 동작을 비교할 때 발생합니다. Windows 7은 디버거에 하나의 스레드만 표시하는 반면 Windows 10은 4개의 "작업자 스레드"를 포함하여 5개의 스레드를 표시합니다.

핵심 이 현상을 이해하는 것은 Windows 10의 로더인 ntdll.dll의 역할에 있습니다. 스레드 풀 스레드의 진입점인 TppWorkerThread() 함수에 중단점을 설정하면 첫 번째 스레드 풀의 스택 추적을 캡처할 수 있습니다.

스택 추적을 보면 로더가 Windows 10에서 DLL을 로드하기 위해 스레드 풀을 활용하고 있음을 알 수 있습니다. 이러한 동시성을 통해 Windows 10은 다중 코어를 활용하여 프로세스 초기화 속도를 높일 수 있습니다.

따라서 Windows 10의 간단한 C 프로그램에서 볼 수 있는 추가 스레드는 로더 최적화 기술의 부산물입니다. 이 동작은 성능을 향상하기 위한 것이며 Windows 10의 향상된 리소스 관리 덕분일 수 있습니다.

위 내용은 Windows 10의 간단한 C 프로그램에 추가 스레드가 있는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿