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
What technique can be employed to compare two strings?
How to perform quicksort in java?
What is difference between jdk,jre and jvm?
Difference between Linked list and Queue?
Why is boolean important?
How many types of interfaces are there?
Explain about the select method with an example?
Can a source file contain more than one class declaration?
How to store image in arraylist in java?
Explain the difference between arraylist and linkedlist in java?
What do you understand by the term singleton?
Why is multithreading important?
Can we extend singleton class?
what is comparable and comparator interface?
What is the difference between a method and a function in alice?