DebugSettings.EnableFrameRateCounter 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
프레임 속도 및 프레임당 CPU 사용량 정보를 표시할지 여부를 나타내는 값을 가져오거나 설정합니다. 앱이 실행되는 동안 창 크롬에 카운터 오버레이로 표시됩니다.
public:
property bool EnableFrameRateCounter { bool get(); void set(bool value); };
bool EnableFrameRateCounter();
void EnableFrameRateCounter(bool value);
public bool EnableFrameRateCounter { get; set; }
var boolean = debugSettings.enableFrameRateCounter;
debugSettings.enableFrameRateCounter = boolean;
Public Property EnableFrameRateCounter As Boolean
속성 값
bool
true 이면 오버레이 디버그 카운터를 표시합니다. 그렇지 않으면 false입니다.
설명
오버레이 디버그 카운터에는 두 개의 숫자 집합이 있습니다. 화면의 왼쪽 위에 표시되는 집합은 앱에만 적용됩니다. 오른쪽 위에 표시되는 집합은 시스템 전체에 적용되며 복합 데스크톱에 그리는 다른 앱도 고려합니다. 오른쪽 카운터는 일반적으로 Microsoft Windows에 대한 작성을 처리하는 Microsoft DirectComposition 구성 요소에서 제공됩니다. 기본적으로 EnableFrameRateCounter를 true로 설정하면 기본 구성 요소에서 IDCompositionDeviceDebug.EnableDebugCounters 도 호출됩니다. 그 결과 UWP 앱을 디버그할 때 XAML을 사용하는 앱과 모든 앱에 대한 Microsoft DirectComposition 카운터가 모두 표시됩니다.
창 크롬에 표시되는 프레임 속도 카운터의 형식은 다음과 같습니다.
앱 fps | 앱 CPU | … | … | Sys fps | Sys CPU |
---|---|---|---|---|---|
000 | 000 | … | … | 000 | 000 |
앱의 UI 스레드 프레임 속도(초당 프레임 수)입니다. | 프레임당 앱 UI 스레드의 CPU 사용량(밀리초)입니다. | … | … | 시스템 전체 컴퍼지션 엔진 프레임 속도(초당 프레임 수)입니다. 이것은 일반적으로 60에 고정됩니다. | 프레임당 컴퍼지션 스레드의 시스템 전체 CPU 사용량(밀리초)입니다. |
앱 fps 값은 특히 UI 스레드에서 보고합니다. 앱에서 컴퍼지션 스레드와 관련이 있지만 UI 스레드와는 관련이 없는 훨씬 더 높은 명백한 새로 고침 빈도가 발생할 수 있습니다. 각 스레드의 책임에 대한 자세한 내용은 에 대한 성능 모범 사례를 참조하세요 .
OnLaunched 는 DebugSettings 값을 변경하기에 좋은 위치입니다. 또 다른 가능성은 생성자입니다 App()
.
이전 버전에 대한 참고 사항
Windows 8 Windows 8 카운터는 다른 형식을 사용했으며 Microsoft DirectComposition 카운터를 통합하지 않았습니다. 그 형식은 다음과 같습니다.
000 | 000 | 000000 | 000 | 000 | 000 |
*Comp fps* | *UI fps* | *메모리* | *일괄 처리* | *Comp ms* | *UI ms* |
- Comp fps: 컴퍼지션 스레드의 프레임 속도
- UI fps: UI 스레드의 프레임 속도
- 메모리: 텍스처의 메모리 사용률
- Batch: GPU(그래픽 처리 장치)로 전송되는 표면 수
- Comp ms: 컴퍼지션 스레드에 소요된 프레임당 시간(밀리초)
- UI ms: UI 스레드에 소요된 프레임당 시간(밀리초)