42 std::memory_order memorder = std::memory_order_seq_cst)
44 T orig =
a->load (memorder);
47 while (orig >= bound + decr &&
48 !
a->compare_exchange_strong (orig, orig - decr, memorder)) {
T atomic_bounded_decrement(std::atomic< T > *a, T bound=0, T decr=1, std::memory_order memorder=std::memory_order_seq_cst)
Atomically decrement a value with a lower bound.