代码之家  ›  专栏  ›  技术社区  ›  Tony The Lion

为什么需要一个空的互斥体?

  •  2
  • Tony The Lion  · 技术社区  · 14 年前

    为什么需要一个互斥对象,而获取和释放方法只返回0?

    我正在研究ace框架,它有一个空的mutex类,我想知道它将如何使用。

    class Null_Mutex
    {
    public:
    Null_Mutex (void) {}
    ˜Null_Mutex (void) {}
    int remove (void) { return 0; }
    int acquire (void) const { return 0; }
    int try_acquire (void) const { return 0; }
    int release (void) const { return 0; }
    };
    
    1 回复  |  直到 14 年前
        1
  •  4
  •   ymv    14 年前

    它是空对象模式:当您不需要实际的互斥逻辑时,可以将它传递给需要互斥的代码。