Comment obtenir les informations sur la mémoire et le CPU de la machine ?

零下一度
Libérer: 2017-06-23 16:09:20
original
1941 Les gens l'ont consulté

J'ai récemment travaillé sur un projet dans lequel j'avais besoin d'obtenir l'utilisation du processeur et de la mémoire de la machine. J'ai passé du temps à chercher en ligne et j'ai fait quelques tests moi-même. Pour résumer, il existe essentiellement deux manières : l’une consiste à utiliser WMI (2 types) et l’autre consiste à utiliser le compteur de performances.

1. Utilisez WMI pour créer une connexion à l'ordinateur en transmettant le nom d'utilisateur et le mot de passe. Une fois la connexion créée, interrogez le processeur et la mémoire en transmettant la requête, de la même manière que SQL. et un PC local. Par exemple :

System.Management.ConnectionOptions Conn = new ConnectionOptions();

Conn.Username = mpusername;

      Conn.Password = mppwd;

string scopestring = "//" + mpserver + "/root/cimv2";

System.Management.ManagementScope Ms = new ManagementScope(scopestring);

Ms.Connect ();

mos.Scope = Ms;

ObjectQuery oq = new ObjectQuery();

oq.QueryString = "select * from Win32_Processor";

                                                                                     , ne peut pas être utilisé, et j'ai finalement trouvé cette classe "Win32_PerfRawData_PerfOS_Me. mory"

ManagementObjectCollection mcr = mcp.getQueryResult("select * from Win32_ComputerSystem"); 🎜>                                                   

if (Mo mory"] ! = Null)

{

Totalm = Long.parse (Mo ["TotalphysicalMemory"]. > ManagementObjectCollection moc = mcp.getQueryResult("select * from Win32_PerfRawData_PerfOS_Memory");

foreach (ManagementObject mo in moc)

{

string avilable = mo.GetPropertyValue("AvailableBytes").ToString();
avilablem = long.Parse(avilable);
}



2. Obtenez les informations sur le processeur et la mémoire du serveur local en passant les classes WMI, telles que " Win32_Processor", "Win32_OperatingSystem"

ManagementClass mc = new ManagementClass("Win32_OperatingSystem");

ManagementObjectCollection moc = mc.GetInstances();

3. Utilisez le compteur de performances pour obtenir les données de performances transmettant le nom du compteur de performances, telles que monitor.PerformanceCounterFun("Processor", "_Total", "% Processor Time"). devrait obtenir les données du compteur de performances plusieurs fois, puis utiliser les valeurs moyennes.

Bien que celles-ci soient relativement simples, je souhaite quand même les enregistrer, j'espère qu'elles pourront être utiles à tout le monde !

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!