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

拡張Section排他管理クラス [詳解]

#include <TnbSync.h>

+ CSyncSectionEx の継承関係図

公開メンバ関数

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

詳解

拡張Section排他管理クラス

CriticalSectionを使った同期を実現します。
覚え書き
CSyncSection との差異は、 Lock() メソッドにおいて、 時間を指定できる点です。
同インスタンスのみで同期が取れます。
注意
同スレッドではロックできません。同一スレッドの場合ネストロックになります。 ロックの数だけアンロックをしてください。
参照
http://msdn.microsoft.com/library/ja/jpdllpro/html/_win32_initializecriticalsection.asp
必要ファイル
TnbSync.h
日付
06/07/18 新規作成
06/07/27 dwTime を有効にした。

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

構築子と解体子

◆ CSyncSectionEx()

CSyncSectionEx ( void  )

コンストラクタ

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

◆ ~CSyncSectionEx()

virtual ~CSyncSectionEx ( void  )
virtual

デストラクタ

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

関数詳解

◆ Lock()

virtual bool Lock ( DWORD  dwTime = INFINITE) const
virtual

[排他] ロック

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

CSyncSectionを再実装しています。

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

◆ Unlock()

virtual void Unlock ( void  ) const
virtualinherited

[排他] アンロック

ISynchronizedを実装しています。

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