You suggest simply locking around the whole operation?  I guess if we're not going to have a lock-free get, there's not a lot of reason to double-check. :/ 

I'm really trying to minimize the amount of time we're in contention.  If I could make this lock-free I would, but get() is unsafe.  This method is really really busy when we have deep scoping - lots of threads are going to come through this method on every adapter load.