private void finishLongRunningOperation(boolean wasEnded) { lock.lock(); try { operations.popLongRunningOperation(); if (operations.isInCacheAction()) { restoreOwner(); if (wasEnded) { onStartWork(); } } } finally { lock.unlock(); } }