Je suis tombé sur un comportement différent dans le calcul de l'itilisation du processeur. Dans mon code j'utilise le compteur de performance "Processor Time", instance "_Total" et il semble fonctionner (Windows Performance Monitor afficher la même valeur, Sysinternals Process Explorer ainsi) , mais intégré Gestionnaire des tâches dans Windows 8 ou 10 montre beaucoup moins, si les options d'alimentation permettent d'équilibrer la vitesse du CPU et le CPU est à un moment donné fonctionnant à une fréquence plus basse.Utilisation du processeur et vitesse du processeur
Y at-il une fonction C# de C, perf. compteur .. pour fournir cette valeur (Gestionnaire des tâches), ou lire la fréquence actuelle du processeur et en quelque sorte le calculer?
En utilisant _Total, et ainsi obtenir le temps processeur utilisé pour * tous * processus au lieu de simplement le vôtre, est assez inhabituel et pas ce que Task Manager affiche dans l'onglet Processus . La catégorie compte, il y a "Processeur" et "Information Processeur". Le gestionnaire de tâches utilise ce dernier, c'est une catégorie de compteur plus récente qui essaie de compenser les fréquences variables et l'hyper-threading. Le meilleur moyen est certainement de ne pas ajouter un doodah à votre programme qui est trivialement visible sans aucune aide. –
merci, mais la catégorie "Processeur" et "Informations sur le processeur" me donne les mêmes numéros, même CPU tourne à environ la moitié de la fréquence. – user2136076