Nei vari UI framework basati su XAML ci siamo abituati ad avere a disposizione nativamente alcuni strumenti per controllare il consumo di risorse, in tempo reale, che la nostra applicazione chiede al sistema.
Analogamente a Silverlight
https://www.silverlightitalia.com/articoli/silverlight/migliorare-prestazioni-silverlight.aspx
e Windows Phone Runtime
https://www.winphoneitalia.com/articoli/windows-phone-7/performance-windows-phone-7-p-2.aspx
anche in WinRT abbiamo la proprietá EnableFrameRateCounter esposta dalla classe statica DebugSettings.
DebugSettings.EnableFrameRateCounter = true;
Come gli altri framework questa proprietá renderizza a video una serie di counter:
- Cp fps: frames per secondo per composition thread
- UI fps: frames per secondo per UI thread
- Memory: memoria utilizzata per le textures
- Batch: numero di aree inviate alla GPU
- Cp cpu: tempo, in millisecondi, speso dai composition thread
- UI cpu: tempo, in millisecondi, speso dagli UI thread

Il momento corretto in cui valorizzare questa proprietá é l'override di OnLaunched, l'importante é disattivarne la visualizzazione quando non siamo in debug, ad esempio:
App.Current.DebugSettings.EnableFrameRateCounter = System.Diagnostics.Debugger.IsAttached;
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Managed deployment strategy in Azure DevOps
Potenziare la ricerca su Cosmos DB con Full Text Search
Usare il colore CSS per migliorare lo stile della pagina
Testare l'invio dei messaggi con Event Hubs Data Explorer
Miglioramenti agli screen reader e al contrasto in Angular
Migliorare l'organizzazione delle risorse con Azure Policy
Recuperare automaticamente un utente e aggiungerlo ad un gruppo di Azure DevOps
Collegare applicazioni server e client con .NET Aspire
Utilizzare la funzione EF.Parameter per forzare la parametrizzazione di una costante con Entity Framework
Generare HTML a runtime a partire da un componente Razor in ASP.NET Core
Creare un webhook in Azure DevOps
Supportare la sessione affinity di Azure App Service con Application Gateway