well if the `semaphore.release()` throws an exception (unchecked) you still want to countdown the latch no?