Quantcast
Channel: イグトランスの頭の中
Viewing all articles
Browse latest Browse all 123

Boostのなんにもしないミューテ(ッ)クス

$
0
0

以下のコードのように、実際には何も行わず、ただミューテックスの要件を満たすだけの実装は簡単に作れるでしょう。Null Objectパターンの一種と言えますよね。

class null_mutex
{
  void lock() {}
  void try_lock() {}
  void unlock() {}
};

Boostには、そんなクラスがなんだかあちこちにあるようです。

Boost.Threadのものが最も汎用的です。BoostのUpgradeLockableコンセプトまで実装しています。それに次ぐのがBoost.Interprocessのものです。残りはLockableコンセプト(lock, try_lock, unlock)のみ実装のようです。

私自身は、boost::signals2::dummy_mutexなら使ったことがあります。シングルスレッドでboost::signals2::signalを使うという状況でした。

Boostのなんにもしないミューテ(ッ)クス is a post from: イグトランスの頭の中


Viewing all articles
Browse latest Browse all 123

Trending Articles