Searched refs:my_flag (Results 1 – 4 of 4) sorted by relevance
57 my_flag.wait(true, /* context = */ 0, std::memory_order_relaxed); in lock()64 bool result = !my_flag.load(std::memory_order_relaxed) && !my_flag.exchange(true); in try_lock()76 my_flag.exchange(false); in unlock()77 my_flag.notify_one_relaxed(); in unlock()81 waitable_atomic<bool> my_flag{0};
48 return my_flag.load(std::memory_order_relaxed) == 0; in lock()51 while (my_flag.exchange(1)) { in lock()63 my_flag.exchange(0); // full fence, so the next load is relaxed in unlock()72 futex_wait(&my_flag, 1); in wait()80 futex_wakeup_one(&my_flag); in wakeup()87 std::atomic<int> my_flag{0};
460 std::atomic<int>& my_flag;461 serial_fn_body(std::atomic<int>& flag) : my_flag(flag) { }463 if (my_flag == 0) {464 my_flag = 1;467 utils::SpinWaitWhileEq(my_flag, 1);475 std::atomic<int>& my_flag;476 serial_continue_body(std::atomic<int> &flag) : my_flag(flag) {}479 my_flag = 1;481 utils::SpinWaitWhileEq(my_flag, 1);
536 std::atomic<int>& my_flag; member537 mf_body(std::atomic<int>& flag) : my_flag(flag) { } in mf_body()539 if(my_flag == 0) { in operator ()()540 my_flag = 1; in operator ()()542 utils::SpinWaitWhileEq(my_flag, 1); in operator ()()