Merge pull request #9966 from bunnei/bounded-polyfill

common: bounded_threadsafe_queue: Use polyfill_thread.
This commit is contained in:
liamwhite 2023-03-18 12:39:52 -04:00 committed by GitHub
commit 0e7e98e24e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -9,10 +9,11 @@
#include <memory>
#include <mutex>
#include <new>
#include <stop_token>
#include <type_traits>
#include <utility>
#include "common/polyfill_thread.h"
namespace Common {
#if defined(__cpp_lib_hardware_interference_size)
@ -78,7 +79,7 @@ public:
auto& slot = slots[idx(tail)];
if (!slot.turn.test()) {
std::unique_lock lock{cv_mutex};
cv.wait(lock, stop, [&slot] { return slot.turn.test(); });
Common::CondvarWait(cv, lock, stop, [&slot] { return slot.turn.test(); });
}
v = slot.move();
slot.destroy();