Well, it's not just a boolean, it's a boolean + the monitor of `this`... the advantage of CountDownLatch is that `getCount()` only does a volatile read, no synchronization.