For Boost version: 1.86.0
The documentation here states:
"A file lock, is a mutual exclusion utility similar to a mutex using a file. A file lock has sharable and exclusive locking capabilities and can be used with scoped_lock and sharable_lock classes."
When I try to use a scoped_lock with a file_lock like so:
boost::interprocess::file_lock* flk = nullptr; // Just for compilation testing purposes
boost::interprocess::scoped_lock<boost::interprocess::file_lock> lock(*flk);
I run into the following compile error:
include/boost/interprocess/sync/detail/locks.hpp:35:60: error: no type named ‘internal_mutex_type’ in ‘boost::interprocess::scoped_lock<boost::interprocess::file_lock>::mutex_type’ {aka ‘class boost::interprocess::file_lock’}
35 | typedef typename Lock::mutex_type::internal_mutex_type mutex_type;