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
Cambiare la chiave di partizionamento di Azure Cosmos DB
Eseguire query manipolando liste di tipi semplici con Entity Framework Core
Eseguire una query su SQL Azure tramite un workflow di GitHub
Utilizzare Azure AI Studio per testare i modelli AI
Copiare automaticamente le secret tra più repository di GitHub
Creazione di plugin per Tailwind CSS: espandere le Funzionalità del Framework
Gestire errori funzionali tramite exception in ASP.NET Core Web API
Limitare le richieste lato server con l'interactive routing di Blazor 8
Mascherare l'output di un valore all'interno dei log di un workflow di GitHub
Sfruttare MQTT in cloud e in edge con Azure Event Grid
Eseguire operazioni con timeout in React
Supportare il sorting di dati tabellari in Blazor con QuickGrid