Which of the following is the most common cause of a deadlock in multithreading?
Two threads accessing the same variable
Threads requesting resources in a different order
A single thread holding multiple locks
Not using volatile correctly
This question is part of this quiz :
Java Deadlocks and Synchronization