Answer Posted / javamasque
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 |
Post New Answer View All Answers
Define how does a try statement determine which catch clause should be used to handle an exception?
Give an example of use of pointers in java class.
What are advantages of exception handling in java?
What is the primary benefit of encapsulation?
What language is java written?
What is a function easy definition?
Can a constructor have different name than a class name in java?
How many types of memory areas are allocated by jvm?
how can i use a nonsynchronized hashtable?
What is nullpointerexception in java?
What is the exact difference in between Unicast and Multicast object?
Do you need to import math in java?
Given a singly linked list, determine whether it contains a loop or not without using temporary space?
How many bits is a string in java?
In which language java is written?