Name
ThreadMXBean
Synopsis
This MXBean interface
allows monitoring of thread usage
in a Java VM. A number of methods, such as getThreadCount(
) and getPeakThreadCount( ), return
information about all running threads. Other methods return
information about individual threads. Threads are identified by their
thread id, which is a long integer.
getAllThreadIds(
)
returns all ids as an array of
long. Complete information, including stack trace,
about a thread or set of threads can be obtained with the
getThreadInfo( )
methods, which return
ThreadInfo objects.
If isThreadCpuTimeSupported(
)
returns true, you can
enable thread timing with setThreadCpuTimeEnabled(
)
and query the runtime of a specific thread
with getThreadCpuTime(
)
and getThreadUserTime( ).
The values returned by these methods are measured in nanoseconds.
One of the potentially most useful methods of this interface is
findMonitorDeadlockedThreads(
)
. It looks for cycles of
threads that are deadlocked waiting to lock objects whose locks are
held by other threads in the cycle.
public interface ThreadMXBean { // Public Instance Methods long[ ] findMonitorDeadlockedThreads( ); long[ ] getAllThreadIds( ); long getCurrentThreadCpuTime( ); long getCurrentThreadUserTime( ); int getDaemonThreadCount( ); int getPeakThreadCount( ); int getThreadCount( ); long getThreadCpuTime(long id); ThreadInfo getThreadInfo(long id); ThreadInfo[ ] getThreadInfo(long[ ] ids); ThreadInfo[ ] getThreadInfo(long[ ] ids, int maxDepth); ThreadInfo ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access