Lines Matching refs:data
40 LockFreeQueuePointerData data; member
106 emptyNode->m_next.data.pointer = 0; in LockFreeQueueImplBase()
107 m_head.data.pointer = m_tail.data.pointer = emptyNode; in LockFreeQueueImplBase()
112 return m_head.data.pointer == m_tail.data.pointer; in IsEmpty()
140 LockFreeQueuePointer next = head.data.pointer->m_next; in DequeueImpl()
143 if (head.data.pointer == tail.data.pointer) in DequeueImpl()
145 if (!next.data.pointer) in DequeueImpl()
151 … CompareAndSwapQueuePointer(&(this->m_tail), tail, next.data.pointer, tail.data.tag + 1); in DequeueImpl()
156 … T DequeuedObject = static_cast<LockFreeQueueNode<T>*>(next.data.pointer)->Value(); in DequeueImpl()
157 … if (CompareAndSwapQueuePointer(&(this->m_head), head, next.data.pointer, head.data.tag + 1)) in DequeueImpl()
160 … LockFreeQueueNode<T>* ret = static_cast<LockFreeQueueNode<T>*>(head.data.pointer); in DequeueImpl()