there is several `unlock` calls outside of ensure blocks in this file, see https://github.com/ruby-concurrency/concurrent-ruby/blob/master/lib/concurrent/atomic/copy_on_notify_observer_set.rb#L46