|
Boost : |
From: Andrey Semashev (andrey.semashev_at_[hidden])
Date: 2023-06-01 11:52:06
On 6/1/23 03:15, Glen Fernandes via Boost wrote:
> On Wednesday, May 31, 2023, Christian Mazakas wrote:
>
>> Unordered's concurrent flat map contains a hand-rolled
>> spinlock (graciously provided by Peter Dimov) but it contains
>> a dependency on SmartPtr for the following two headers:
>>
>> #include <boost/smart_ptr/detail/sp_thread_pause.hpp>
There is a better implementation in Boost.Atomic:
>> #include <boost/smart_ptr/detail/sp_thread_sleep.hpp>
>>
>> I advocate that we move these to Core. They're small, self-contained
>> and are useful in broader contexts.
>>
>> Anyone have thoughts or objections?
>
> These are appropriate for Core. No objections from me. Andrey/Peter?
I would rather have those, along with a spin_mutex implementation, in
Boost.Thread, but I realize Peter wouldn't want to depend on it in
Boost.SmartPtr.
Incidentally, we have a spin_mutex (with another pause implementation)
in Boost.Sync. Peter, probably, wouldn't want to depend on it either,
but perhaps it would be suitable for other libraries. I could start
cleaning it up for a review, time permitting.
Re. moving those components to Boost.Core, I don't like it, but I can be
overruled.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk