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
Can extern variables be initialized?
Explain an algorithm to find depth of a binary tree.
Explain about anonymous inner classes ?
A person says that he compiled a java class successfully without even having a main method in it? Is it possible?
What is a 16 bit word?
How can you handle java exceptions?
What is variable declaration and definition?
What is palindrome in java?
When should we create our own custom exception classes?
Can memory leak happen java?
What is boolean keyword in java?
Is 0 true or false?
When can we say that threads are not lightweight process in java?
can any body body expalin best definitions & best real time exaples for opps concepts.
What is the java virtual machine?