Why change the type from <Object> to <AtomicBoolean>? This winds up making unnecessary changes to a bunch of other test cases.  If you do need AtomicBooleans, better to make this a SynchronousLifecycle<T> so that those who don't care can continue using an Object pool and you can use an AtomicBoolean pool.