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
Creazione di plugin per Tailwind CSS: espandere le funzionalità del framework dinamicamente
Eseguire query manipolando liste di tipi semplici con Entity Framework Core
Determinare lo stato di un pod in Kubernetes
Gestire domini wildcard in Azure Container Apps
Le novità di Angular: i miglioramenti alla CLI
Eseguire attività basate su eventi con Azure Container Jobs
Utilizzare il trigger SQL con le Azure Function
Aggiungere interattività lato server in Blazor 8
Creare form tipizzati con Angular
Gestire undefined e partial nelle reactive forms di Angular
Evitare il flickering dei componenti nel prerender di Blazor 8
Effettuare chiamate con versioning da Blazor ad ASP.NET Core