API Sigar per JAVA (hai bisogno di una guida)
Ho scaricato l'API Sigar ( http://support.hyperic.com/display/SIGAR/Home) e vorrebbe usarlo in un progetto per ottenere informazioni sui diversi processi in esecuzione.
Il mio problema è che non riesco a trovare alcuni frammenti di codice utili da cui imparare e il javadoc dal loro sito web non è di grande aiuto, perché non so cosa dovrei cercare.
Hai qualche idea dove potrei trovare maggiori informazioni?
3 answers
Per trovare il pid
(che è necessario per trovare informazioni su un determinato processo), è possibile utilizzare un ProcessFinder
.
Il metodo per trovare un singolo processo pid è findSingleProcess(String expression)
. Esempio:
Sigar sigar=new Sigar();
ProcessFinder find=new ProcessFinder(sigar);
long pid=find.findSingleProcess("Exe.Name.ct=explorer");
ProcMem memory=new ProcMem();
memory.gather(sigar, pid);
System.out.println(Long.toString(memory.getSize()));
La sintassi dell'espressione è questa:
Class.Attribute.operator=value
Dove:
Class is the name of the Sigar class minus the Proc prefix.
Attribute is an attribute of the given Class, index into an array or key in a Map class.
operator is one of the following for String values:
eq - Equal to value
ne - Not Equal to value
ew - Ends with value
sw - Starts with value
ct - Contains value (substring)
re - Regular expression value matches
operator is one of the following for numeric values:
eq - Equal to value
ne - Not Equal to value
gt - Greater than value
ge - Greater than or equal value
lt - Less than value
le - Less than or equal value
Maggiori informazioni qui: http://support.hyperic.com/display/SIGAR/PTQL
Se si utilizza Windows 7 provare a fare qualcosa
likefindSingleProcess("State.Name.ct=explorer");
Nel loro ultimo pacchetto, forniscono molti esempi di utilizzo sotto bindings\java\examples
. Guardali.