Sziasztok!
Adott program lemezhasználatát hogyan tudom megnézni (Írás és olvasás Kb/sec) C#-ban? Rengeteg helyen néztem már megoldásokat (StackOverflow, Code Project, MSDN social, stb.) de az esetek döntő többségében az ottani fórumlakók még csak a kérdés lényegét sem tudták felfogni. A maradék esetekben pedig egy egyszerű package.függvénynév(paraméter) megadása helyett fontosnak tartották megosztani az univerzum minden kérdésére a választ.
Nem komplett megoldás, önmagában leforduló kód, vagy egy ész nélkül copy+paste-elhető kód az amire szükségem van, vagy egy belinkelt .ZIP hanem elég lenne egy package, és azon belül egy eljárás/függvény név a megfelelő paraméterekkel. Egyszerűen nem hiszem el, hogy ez ennyire megoldhatatlan dolog lenne.
Ameddig én eljutottam az a "PerformanceCounter". Ha írok egy ilyet, hogy PerformanceCounter EnPerformanszKaunterem = new PerformanceCounter("PhysicalDisk", "Disk Read Bytes/sec", "_Total"); az azért nem jó, mert ez az összes létező folyamat lemezolvasását kiírja.
- 613 megtekintés
Hozzászólások
var cnt = new PerformanceCounter("Process", "IO Data Bytes/sec", instanceName, true);
- A hozzászóláshoz be kell jelentkezni
Nagyon szépen köszönöm!
--
"Csak webfejlesztést ne..." -ismeretlen eredetű szállóige-
- A hozzászóláshoz be kell jelentkezni
Porogramozás nélkül is lehet.
Process Explorer -> Jobb egér a processzen -> Performance vagy Performance Graph.
- A hozzászóláshoz be kell jelentkezni
/proc/[PID]/io
Ebből a fájlból minden IO adatot ki lehet szedni. így néz ki:
fellegis@INF-DESKTOP:/$ cat /proc/11689/io
rchar: 188407636
wchar: 31867371
syscr: 66287
syscw: 113979
read_bytes: 2338816
write_bytes: 27152384
cancelled_write_bytes: 1933312
-fs-
Az olyan tárgyakat, amik képesek az mc futtatására, munkaeszköznek nevezzük.
- A hozzászóláshoz be kell jelentkezni