< prev index next >

src/hotspot/share/gc/shared/ptrQueue.cpp

Print this page

        

*** 195,205 **** // transfer, false if blocked from doing so by some other thread's // in-progress transfer. bool BufferNode::Allocator::try_transfer_pending() { // Attempt to claim the lock. if (Atomic::load(&_transfer_lock) || // Skip CAS if likely to fail. ! Atomic::cmpxchg(true, &_transfer_lock, false)) { return false; } // Have the lock; perform the transfer. // Claim all the pending nodes. --- 195,205 ---- // transfer, false if blocked from doing so by some other thread's // in-progress transfer. bool BufferNode::Allocator::try_transfer_pending() { // Attempt to claim the lock. if (Atomic::load(&_transfer_lock) || // Skip CAS if likely to fail. ! Atomic::cmpxchg(&_transfer_lock, false, true)) { return false; } // Have the lock; perform the transfer. // Claim all the pending nodes.
< prev index next >