Разблокировка блокировки принадлежащей другому потоку java

У меня есть LockManager, который управляет блокировками нескольких потоков. Иногда темы - плохие парни, и я должен убить их и попросить LockManager снять все их блокировки. Однако, поскольку я использую ReentrantLock в Java, это невозможно, я не могу разблокировать блокировку, принадлежащую другому потоку.

Я вынужден использовать замки (не могу использовать семафоры, это точка домашней работы). Есть ли реализация Java Lock, которая позволяет мне разблокировать блокировки, принадлежащие другим потокам?

Пока что я рассмотрел следующие варианты:

повторная реализация ReentrantLock таким образом, который позволяет мне сделать этоСделать какое-то отображение между семафорами и ReentrantLocks

Дополнительные источники вы можете найти полезными:

Блокировка с повторным входом - разблокировка из другого потокаРазблокировать блокировку из потока, которому он не принадлежит, или изменить дизайн, чтобы избежать этого?

Ответы на вопрос(4)

Ваш ответ на вопрос