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 |
Is zero a positive integer?
How can you make a class serializable in java?
What is an abstract class and abstract method?
How many bits is a char?
What is ternary operator in java?
What is a function argument in java?
Why is stringbuffer called mutable?
What is a parameter example?
Can you explain the final method modifier?
Is int a class in java?
What causes memory leaks in java?
Name the components that are termed to be Heavy-weight component but available in Light-weight components?