Blog

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

A Java 6 megjelenésével több belső információhoz férhetünk hozzá futásidőben, amelyek közül érdekes lehet lekérdezni a szálak adatait, beleértve olyan metrikát, mint a felhasznált CPU idő.

...

A titok a ManagementFactory statikus metódusai körül van, innen tudjuk lekérdezni a ThreadMXBean példányt, amelyből le tudjuk kérdezni az éppen létező szálak adatait:

...

Code Block
languagejava
linenumberstrue
ThreadMXBean threads = ManagementFactory.getThreadMXBean();

...

ThreadInfo[] threadInfos = threads.getThreadInfo(threads.getAllThreadIds());

...

for (int i = 0; i < threadInfos.length; i++)

...

{
  

...

long nanoTime = threads.getThreadCpuTime(threadInfos[i].getThreadId());

...

  System.out.println("cpuTime[" + threadInfos[i].getThreadName() + "]: " + nanoTime);

...

}

A CPU időn túl több metrika is felderíthető, érdemes megtekinteni a ThreadMXBean illetve a ThreadInfo metódusait.