Workaround TSAN CI bug

fix #2499
This commit is contained in:
Richard Hodges
2022-08-16 10:26:23 +02:00
parent 00293a6adb
commit 3f7f2572b0
2 changed files with 18 additions and 8 deletions

View File

@ -1,3 +1,7 @@
* Workaround TSAN CI bug.
--------------------------------------------------------------------------------
Version 332:
* Fix beast::zlib warnings

View File

@ -122,15 +122,21 @@ void
enable_yield_to::
spawn(F0&& f, FN&&... fn)
{
asio::spawn(ioc_,
[&](yield_context yield)
// dispatch of spawn is a workaround for
// https://github.com/boostorg/beast/issues/2499
asio::dispatch(ioc_,
[&]
{
f(yield);
std::lock_guard<std::mutex> lock{m_};
if(--running_ == 0)
cv_.notify_all();
}
, boost::coroutines::attributes(2 * 1024 * 1024));
asio::spawn(ioc_,
[&](yield_context yield)
{
f(yield);
std::lock_guard<std::mutex> lock{m_};
if(--running_ == 0)
cv_.notify_all();
}
, boost::coroutines::attributes(2 * 1024 * 1024));
});
spawn(fn...);
}