How does synchronized modifier work?
Synchronized is used to make a resource thread safe. If an object or resources is accessed by more than one thread, then these should be under synchronization. Only method and block can be synchronized.
Synchronized method
• As an instance method is synchronized then, the object is locked for a period of time as a thread is accessing the method.
• As a class method (static) is synchronized then, whole class is locked for a period of time as a thread is accessing the class method.
Synchronized block
• A particular set of statements (lines of codes) inside method or block is synchronized with synchronized block.
• An object reference is passed inside synchronized block to make a particular set of statements inside instance method or block.
synchronized (this){
}
• If a particular set of synchronized statements inside instance method or block is accessed by a thread then whole object is locked.
• A class reference is passed inside synchronized block to make a particular set of statements inside static method or block.
Synchronized (Class.class){
}
| Is This Answer Correct ? | 4 Yes | 0 No |
What do you mean by the term transient?
Is array primitive data type in java?
Can a static class have a constructor?
How to initialize an Applet ?
What is difference between hashset and hashmap?
What is command line argument
What are batch updates. in jdbc
What are 5 boolean operators?
How do you avoid global variables?
What is data member in java?
What are MalformedURLException and UnknownHost Exceptions and whey they will be thrown?
Is java owned by oracle?