Surveillance de l'utilisation du processeur dans les applications C #
Ce guide montre comment obtenir des données d'utilisation du processeur à l'échelle du système dans une application C # à l'aide de la classe PerformanceCounter
.
Configuration du compteur:
Commencez par instancier un objet PerformanceCounter
pour suivre l'utilisation du CPU. Cela se fait en spécifiant la catégorie ("processeur"), le nom de contre-nom ("% de processeur") et le nom d'instance ("_total" pour l'utilisation globale du système):
<code class="language-csharp">PerformanceCounter cpuCounter = new PerformanceCounter("Processor", "% Processor Time", "_Total");</code>
Récupération de l'utilisation du processeur:
Le pourcentage d'utilisation actuel du processeur est obtenu en utilisant la méthode NextValue()
. Notez que le premier appel à NextValue()
reviendra toujours à 0%. Un deuxième appel, après un court délai, est nécessaire pour obtenir un résultat significatif.
<code class="language-csharp">public string GetCpuUsage() { // First call to NextValue() is always 0, so we discard it. cpuCounter.NextValue(); System.Threading.Thread.Sleep(1000); // Wait 1 second for a more accurate reading. return cpuCounter.NextValue() + "%"; }</code>
Remarques importantes:
NextValue()
est crucial pour éliminer la valeur par défaut de 0%. System.Threading.Thread.Sleep()
introduit un retard de mesure précise. Ajustez le retard au besoin. PerformanceCounter
similaires. Par exemple: <code class="language-csharp">PerformanceCounter ramCounter = new PerformanceCounter("Memory", "Available MBytes"); public string GetAvailableRAM() { return ramCounter.NextValue() + " MB"; }</code>
La classe PerformanceCounter
fournit un moyen robuste et efficace d'intégrer la surveillance des performances du système dans vos applications C #. N'oubliez pas de gérer les exceptions potentielles (par exemple, PerformanceCounterException
) pendant l'utilisation.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!