Reentrant Monitor in Java

According to Sun Microsystems, Java monitors are reentrant means java thread can reuse the same monitor for different synchronized methods if method is called from the method.


Advantage of Reentrant Monitor

It eliminates the possibility of single thread deadlocking


Let's understand the java reentrant monitor by the example given below:

In this class, m and n are the synchronized methods. The m() method internally calls the n() method.

Now let's call the m() method on a thread. In the class given below, we are creating thread using annonymous class.

Test it Now
Output: this is n() method
this is m() method
 
Next TopicJava io


Latest Courses