작업 단위 성능 카운터 사용
작업 단위 성능 카운터는 Windows 플랫폼에 애플리케이션 프로세스에 대한 인사이트를 제공합니다. 작업 단위를 사용하면 앱이 특정 프로세스에서 실행되는 애플리케이션 부분을 설명하고 소유권을 클레임할 수 있습니다. 예를 들어 웹 브라우저에는 모든 프로세스를 관리하는 고유한 작업 관리자가 있습니다. 작업 단위 성능 카운터를 사용하면 Windows 작업 관리자에서 해당 수준의 세부 정보 및 제어를 사용할 수 있습니다.
instance 경우 사용자의 디바이스에서 실행되는 Microsoft Edge 브라우저를 고려합니다. 브라우저는 특정 프로세스에서 실행되지만 탭, 네트워크 및 오디오 서비스, 확장 및 기타 기능을 호스트하기 위해 다른 프로세스가 만들어집니다. 특정 프로세스를 사용하여 여러 작업 단위를 실행할 수 있으며 다른 앱에서 공유할 수 있습니다. 내부적으로 브라우저는 종속성과 필요한 프로세스와 통신하는 방법을 알고 있지만 Windows 플랫폼 및 기타 애플리케이션은 브라우저가 어떻게 구성되는지 알지 못합니다. 이러한 정보를 사용하면 보다 정확한 리소스 사용 정보를 제공하고 앱 문제를 진단하는 데 도움이 됩니다. 작업 관리자는 프로세스에서 실행 중인 작업 단위를 보고할 수 있습니다. 이를 통해 디버거는 프로세스에서 실행 중인 작업의 종류를 설명하여 개발자 워크로드를 간소화할 수 있습니다.
각 작업 단위에는 다음 속성이 있습니다.
- AppOwnerProcessId: 지정된 작업 단위를 소유하는 프로세스의 ID입니다.
- HostProcessId: 지정된 작업 단위가 실행 중인 프로세스의 ID입니다.
- 종류: 이를 수신하는 애플리케이션에서 작업 단위를 해석하는 방법입니다.
- 제목: 작업 단위에 대한 레이블입니다.
- UniqueId: 작업 단위의 식별자입니다.
데이터 계약
Windows 플랫폼에서 작업 단위와 공유되는 정보는 시스템에서 실행되는 모든 앱에서 쿼리할 수 있습니다. 데이터는 공개적으로 사용 가능하고 문서화된 성능 카운터 API를 사용하여 제공되고 사용됩니다. 구현의 일부로 성능 카운터에는 작업 단위의 레이블을 식별하는 데 사용하는 고유 식별자 문자열이 있어야 합니다. 성능 카운터 고유 식별자 문자열의 예상 형식은 입니다.
- 선행 "WorkUnit" 문자열입니다.
- 1 기반 uniqueId.
- 작업 단위가 실행 중인 프로세스의 식별자입니다.
- 애플리케이션을 나타내는 기본 프로세스의 식별자입니다.
- 사용자에게 친숙한 작업 단위 제목입니다.
참고
작업 단위 정보를 업데이트해야 하는 경우(예: 제목이 변경됨) uniqueId가 유지됩니다. 새 단위는 새 고유 식별자를 사용해야 합니다. uniqueId는 다음 예제와 같이 파이프 문자 "|"를 사용하여 연결해야 합니다.
샘플:
"WorkUnit|1|4321|1019|Instance 1 of pid 1111, owned by 1111"
"WorkUnit|1|8765|1019|Instance 1 of pid 5555, owned by 5555"
"WorkUnit|1|9999|1019|Instance 1 of pid 9999, owned by 9999"
"WorkUnit|2|4321|1019|Instance 2 of pid 1234, owned by 4321"
"WorkUnit|2|8765|1019|Instance 2 of pid 5678, owned by 8765"
작업 단위 제공
성능 카운터 API를 사용하여 작업 단위 성능 카운터 집합의 인스턴스를 만들 수 있습니다. 위에 설명된 데이터 계약에 따라 다른 앱이 데이터의 유효성을 성공적으로 검사하고 사용할 수 있는지 확인합니다.
작업 단위 시각화
Work Unit 성능 카운터에서 데이터를 쿼리하려는 경우 성능 카운터 API 또는 성능 모니터 애플리케이션을 사용할 수 있습니다.
- CMD 프롬프트에 "perfmon"을 입력하거나 실행 대화 상자를 입력하여 PerfMon 도구를 시작합니다.
- "모니터링 도구" 아래에서 "성능 모니터"를 선택합니다.
- "카운터 추가" 단추(녹색 '+' 기호)를 클릭합니다.
- 애플리케이션을 실행하여 제공되는 카운터를 보려면 "작업 단위"를 선택하고 확장합니다.
- 나열된 카운터를 선택합니다. "앱 소유자 프로세스 ID" 및 "호스트 프로세스 ID".
- "모든 인스턴스"를 선택하고 "추가"를 클릭합니다.
- "확인"을 클릭합니다.