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 |
How to connect to a remote database using Applet?
Can an unreachable object become reachable again?
What is Connection pooling? Explain Pros and Cons?
When a thread is executing a synchronized method , then is it possible for the same thread to access other synchronized methods of an object ?
Explain about field hiding in java?
How to compare two strings in java program?
List java api that supports threads?
How do you check if a string is lexicographically in java?
My interview asked what is dynamic variable in java and where we use them.
Is void a keyword in java?
Is singleton class thread safe?
Suppose there is an array list [10,5,20,19,15,24].Print them in ascending & descending order in collection framework concept ???