| 384 | |
| 385 | struct SpinLock { |
| 386 | SpinLock(std::atomic_flag& flag) : m_flag(flag) |
| 387 | { |
| 388 | while (m_flag.test_and_set(std::memory_order_acquire)) |
| 389 | ; |
| 390 | } |
| 391 | |
| 392 | ~SpinLock() { m_flag.clear(std::memory_order_release); } |
| 393 |
nothing calls this directly
no outgoing calls
no test coverage detected