BOOST:如何实现null named_mutex?

时间:2011-02-13 10:03:20

标签: c++ boost

我有时需要named_mutex的“null”实现(即总是成功但什么都不做)。

是否有这样的实施?如果没有,推荐的实施方式是什么?

1 个答案:

答案 0 :(得分:0)

为什么不只有一个空定义的类?

class named_mutex
{
public:
    named_mutex(create_only_t, const char *) {}
    named_mutex(open_or_create_t, const char *) {}
    named_mutex(open_only_t, const char *) {}
    ~named_mutex() {}

    void unlock() {}
    void lock() {}
    bool try_lock() {}
    bool timed_lock(const boost::posix_time::ptime &) {}

    static bool remove(const char *) {}
};

使用此实例作为named_mutex,它就像它从未存在过一样。