Home » Tip Bank » Java » Threading
  • Email Article
  • Comment on this Article
  • Share Article
    • Digg
    • del.icio.us
    • Newvine
    • furl
    • StumbleUpon
    • BlinkList
    • Newsvine
    • Magnolia
    • Facebook
    • Tailrank
    • Slashdot
    • Technorati
    • Google Bookmarks
    • Yahoo Favorites
    • Windows Live
    • Ask
Language: Java
Expertise: Advanced
Aug 8, 2017

Using ThreadMXBean to Understand Threads

The java.lang.management.ThreadMXBean is an interface that helps us to understand a lot about Threads in our code. There are numerous methods that participate to provide excellent visibility of the Threads.

Something that caught me by surprise was the method findDeadlockedThreads() that returns a list of all Threads that are in dead-lock at the moment. Ideally, the method returns an array of Thread IDs that we can use and effectively program in our subsequent process.

Here is some sample code:

ThreadMXBean threadMXBean = ManagementFactory.getThreadMXBean(); //Acquiring an instance
//Array with Thread id's that are deadlocked. This will return null incase there are no deadlocked Threads.
long[] threadIds = threadMXBean.findDeadlockedThreads();

You can prepare your own monitoring class and include the lines above.

A list of other methods in this interface can be found here.

M S Sridhar
 
Submit a Tip
Browse "Java" Tips
Browse All Tips
sitepoint.com
w3schools.com