Back to tasks
МТСGet help with live coding in real time with Sobes Copilot
Junior — Senior
30
Непременно вызывающий deadlock
Companies where asked:
Task condition
Необходимо реализовать класс, в котором гарантированно возникает взаимная блокировка потоков. Для демонстрации следует задействовать два потока и два синхронизируемых объекта. Каждый поток должен захватывать мониторы в разном порядке, что приводит к безвыходной ситуации deadlock.
public class Deadlock {
private final Object monitorA = new Object();
private final Object monitorB = new Object();
public void run1() {
// ...
}
public void run2() {
// ...
}
public static void main(String[] args) {
// ...
}
}