Два потока находятся в тупике, если одному процессу нужна блокировка другого, и наоборот, при наличии n threads
вы все равно можете заблокировать все свои потоки навсегда, если существует циклическая зависимость.
Thread1нужна блокировка thread2, которая нуждается в блокировке thread3 ... нужна блокировка threadn, которая нуждается в блокировке thread1.