Вот пример кода, в котором я вижу
Метод WriteLock для StampedLock зависает и становится бесконечным в случае получения блокировки и не выдачи исключения
acquireStampedLock(String Id){
StampedLock lock = getStamped(Id);
if(lock==null) {
lock = new StampedLock();
}
long stamp = 0 ;
try {
stamp = lock.writeLock();
}
catch(Exception ex) {
log.error("Exception="+ex);
}
finally {
lock.unlockWrite(stamp);
}
}
В идеале он должен иметь таймаут и выдача исключения через некоторое время, чтобы блокировку записи можно было обработать программно. ?