Originally posted by sudhana madhu:
I have a class that contains 2 synchronised methods.I have 2 threads .Can these 2 threads concurrently execute these 2 methods(ie. First thread on First synchronised method and Second thread on Second synchronised method at the same time)If not why??
Whether two threads can run concurrently depends on the locks that they use to synchronize with. Static methods use the Class instance that represents the class. Non-static methods use the 'this' object.
So... If one method is static and the other non-static, they can run concurrently. Also, if neither method is static, and they call different instances, they can run concurrently.
If both methods are static, or if both methods are not static (with the same instance), then no, they can *not* run concurrently.
Henry