TNB Library
公開メンバ関数 | 全メンバ一覧
CSyncCounter クラス

カウンタ式排他クラス [詳解]

#include <TnbSync.h>

+ CSyncCounter の継承関係図

公開メンバ関数

 CSyncCounter (LONG lMax=1)
 コンストラクタ [詳解]
 
virtual bool Lock (DWORD dwTime=INFINITE) const
 [排他] ロック [詳解]
 
virtual void Unlock (void) const
 [排他] アンロック [詳解]
 
virtual ~CSyncCounter (void)
 デストラクタ [詳解]
 

詳解

カウンタ式排他クラス

カウンタを使った排他クラスです。ブロックすることより、進入可能かチェックし、
使用中であればリターンする、という排他を多用するのに向いています。
覚え書き
同インスタンスのみで同期が取れます。
同スレッドでもロックできます(デッドロックに注意)。
必要ファイル
TnbSync.h
日付
06/09/20 新規作成

TnbSync.h593 行目に定義があります。

構築子と解体子

◆ CSyncCounter()

CSyncCounter ( LONG  lMax = 1)

コンストラクタ

引数
lMax進入許可最大数。省略すると1です。0以下は指定しないで下さい。

TnbSync.h601 行目に定義があります。

◆ ~CSyncCounter()

virtual ~CSyncCounter ( void  )
virtual

デストラクタ

TnbSync.h606 行目に定義があります。

関数詳解

◆ Lock()

virtual bool Lock ( DWORD  dwTime = INFINITE) const
virtual

[排他] ロック

引数
dwTimeロックにトライし続けるミリ秒。省略すると無限に待ちます。
戻り値
true成功
false失敗

ISynchronizedを実装しています。

TnbSync.h621 行目に定義があります。

◆ Unlock()

virtual void Unlock ( void  ) const
virtual

[排他] アンロック

ISynchronizedを実装しています。

TnbSync.h654 行目に定義があります。