java - What's the benefit of having two ReentrantLock in a class? -


if have code:

public class prlock {     private lock lock1= new reentrantlock();     private lock lock2= new reentrantlock();     private int num=0;      public void addlock1(){         lock1.lock();         try {             num++;             system.out.println(thread.currentthread().getname()+" num "+num);         } finally{             lock1.unlock();         }     }     public void addlock2() {         lock2.lock();         try {             num++;             system.out.println(thread.currentthread().getname()+" num "+num);         } finally{             lock2.unlock();         }     } } 

what difference between lock1 , lock2, simple alias or there different logic?

if use 1 lock 2 methods won't able execute them concurrently.

so having 2 locks means, while executing addlock1() thread-a can execute addlock2() thread-b. thread-b blocked, if had 1 lock.


Comments

Popular posts from this blog

apache - PHP Soap issue while content length is larger -

asynchronous - Python asyncio task got bad yield -

javascript - Complete OpenIDConnect auth when requesting via Ajax -