名前付きミューテックス、ブースト バージョン 1.36 を使用したブースト インタープロセス ライブラリに既知の問題はありますか。
基本的に私たちは:
#define BT_MY_LOCK "XX_BT_MY_LOCK_XX"
#define WAIT_LOCK named_mutex myLock(open_or_create, BT_TICKET_LIB_LOCK); \
boost::posix_time::ptime expire_time = microsec_clock::universal_time() + boost::posix_time::seconds(2); \
scoped_lock<named_mutex> lock(ticketLock, expire_time); \
if (!lock.owns()) throw mutex_failure();
次に、必要なときにいつでもこのマクロを使用します。
しかし、これにより、Boost が C:\ ドライブの下の一時フォルダーの下に XX_BT_MY_LOCK_XX ファイルを作成しようとするたびに、C:\ フォルダーの開閉が不必要に頻繁に行われるようになったようです。useufl XX_BT_MY_LOCK_XX ファイル アクセスごとに、約 25 個の C:\ Open 、 Close があるようです。
したがって、プロモンからは次のようになります。
XX_BT_MY_LOCK_XX access 1
XX_BT_MY_LOCK_XX access 2
C:\ open
C:\ close
C:\ open
C:\ close
...
repeat 25 times
...
XX_BT_MY_LOCK_XX access 1
XX_BT_MY_LOCK_XX access 2
C:\ open
C:\ close
C:\ open
C:\ close
...
repeat 25 times
既知のブーストの問題ですか?