question: boolean tryMatch ( SNode s ) { if ( match == null && UNSAFE . compareAndSwapObject ( this , matchOffset , null , s ) ) { Thread w = waiter ; if ( w != null ) { waiter = null ; LockSupport . unpark ( w ) ; } return true ; } return match == s ; }
target:  Tries to match node s to this node, if so, waking up thread. Fulfillers call tryMatch to identify their waiters. Waiters block until they have been matched.