уже писали ,но задача 3 содержит ошибку в решении ,либо в условии . Вот вырезка моего диалога с GPT :
Мой вопрос : я правильно понимаю ,что решение какая -то шляпа? Потому что в someMethod мы по сути зависнем навсегда ,так как этот метод далее делает countDown ,чтобы ,насколько я понял,заблокированный поток разблокировать ,но при этом поток никогда не достигнет countDown ,так как он заблокирован ещё на этапе await
ChatGPT сказал:
Да, вы абсолютно правы: предоставленное решение содержит логическую ошибку, из-за которой метод someMethod действительно "зависнет" на вызове latch.await() и никогда не дойдет до latch.countDown().
там ошибка в описании последнего пункта но по сути валидацию задача проходит (если решена) правильно.
Конечно же необходимо звать latch.countDown() в void retrieveValue()
Очень странная задача на Latch. Защелка создается с единичкой, поток встает в await. Предполагается, что другой поток каунтдаунит защелку, она встанет в нуль, наш поток пойдет исполняться, но потом наш поток сам себе каунтдаунит нулевую защелку. Бессмыслица какая-то.
Узнал, что есть такая штука - CountDownLatch. С каждым днем все ближе и ближе к заветной цели - прикинуться тапком и устроиться куда нибудь джуном. Можно будет бросить мести на морозе улицы и возить бухло и шаверму упырям. Сидеть в чистом помещении с белыми стенами, пить чай с молодыми тестировщицами а также рассказывать своим пенсионерам сколько я сегодня потратил на пиво в BBQ. Ляпота!!!
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ