As far as I know in old versions of Boost boost::mutex
implementation for Windows was done using critical sections. But in the newest version of Boost 1.51 I discovered that now mutex implementation is based on Events.
Does anybody know what is the rational behind this change? Was it done because of performance reasons? Do critical sections become deprecated?
Isn't it wonderful that by using boost
we always have best approach with no change?
In new version of boost
, boost::mutex
is implemented as an spinlock but with the help of a windows event to avoid busy wait and that event will only created if needed, thus it is very light weight and have a very high performance and also enable boost
to use this light weight mutex
for timed wait! I think this is excellent
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With