#ifndef SHARED_BARRIERS_HPP #define SHARED_BARRIERS_HPP #include #include #include "util/retry_lock.hpp" namespace osrm { namespace storage { struct SharedBarriers { SharedBarriers() : region_mutex(boost::interprocess::open_or_create, "osrm-region"), region_condition(boost::interprocess::open_or_create, "osrm-region-cv") { } static void remove() { boost::interprocess::named_mutex::remove("osrm-region"); boost::interprocess::named_condition::remove("osrm-region-cv"); } static RetryLock getLockWithRetry(int timeout_seconds) { return RetryLock(timeout_seconds, "osrm-region"); } boost::interprocess::named_mutex region_mutex; boost::interprocess::named_condition region_condition; }; } } #endif // SHARED_BARRIERS_HPP