Home
last modified time | relevance | path

Searched refs:WRITER_PENDING (Results 1 – 2 of 2) sorted by relevance

/oneTBB/include/oneapi/tbb/
H A Drw_mutex.h59 m_state |= WRITER_PENDING; in lock()
90 if (curr_state & WRITER_PENDING) { in unlock()
103 state_type has_writer = WRITER | WRITER_PENDING; in lock_shared()
115 state_type has_writer = WRITER | WRITER_PENDING; in try_lock_shared()
135 if (curr_state & (WRITER_PENDING)) { in unlock_shared()
156 while ((s & READERS) == ONE_READER || !(s & WRITER_PENDING)) { in upgrade()
163 …TBB_ASSERT((m_state.load(std::memory_order_relaxed) & (WRITER_PENDING|WRITER)) == (WRITER_PENDING in upgrade()
166 m_state -= (ONE_READER + WRITER_PENDING); in upgrade()
182 if (!(m_state & WRITER_PENDING)) { in downgrade()
191 static constexpr state_type WRITER_PENDING = 2; variable
[all …]
H A Dspin_rw_mutex.h73 } else if (!(s & WRITER_PENDING)) { // no pending writers in lock()
74 m_state |= WRITER_PENDING; in lock()
105 if (!(s & (WRITER | WRITER_PENDING))) { // no writer or write requests in lock_shared()
122 if (!(s & (WRITER | WRITER_PENDING))) { // no writers in try_lock_shared()
153 while ((s & READERS) == ONE_READER || !(s & WRITER_PENDING)) { in upgrade()
154 if (m_state.compare_exchange_strong(s, s | WRITER | WRITER_PENDING)) { in upgrade()
157 …__TBB_ASSERT((m_state & (WRITER_PENDING|WRITER)) == (WRITER_PENDING | WRITER), "invalid state when… in upgrade()
159 m_state -= (ONE_READER + WRITER_PENDING); in upgrade()
178 static constexpr state_type WRITER_PENDING = 2; variable
179 static constexpr state_type READERS = ~(WRITER | WRITER_PENDING);