
El 29/03/2011 19:34, Rusk . escribió:
Hi,
I have noticed that in version 1.45 Ion Gaztanaga has added detail/robust_emulation.hpp which contains code that seems to emulate pthread_mutexattr_setrobust_np(). I understand this may be needed for platforms that don't support robust mutexes. My version of linux does seem to support robust mutexes, however I could not find a way to compile or in any other way to use this flag on posix mutexes in boost 1.46.1.
It's an experiment to emulate robust mutexes in platforms without them, but using this for platforms with posix process shared mutexes would have a big performance impact. I haven't tested this much and I have now too many fronts and pending updates to work on this, that's why it is in detail directory right now. It's experimental and it won't be stable, I'm afraid. I plan to continue to work on this after Boost.Move is stabilized and Boost.Container review passes. The idea is also to experiment a bit with different C++ implementations to find a correct C++ interface for robust mutexes, since POSIX semantics are not very easily mappable to current lock semantics. Meanwhile you can modify boost/interprocess/sync/posix/pthread_helpers.hpp and set robust mutex attribute in mutexattr_wrapper in you code. Ion