public class Main {
public static void main(String[] args) {
final Object o1 = new Object();
final Object o2 = new Object();
new Thread() {
public void run() {
synchronized(o1) {
synchronized(o2) {
}
}
}
}.start();
new Thread() {
public void run() {
synchronized(o2) {
synchronized(o1) {
}
}
}
}.start();
}
}