CMutex::CMutex
CMutex の名前または名前のないオブジェクトを構築します。
CMutex(
BOOL bInitiallyOwn = FALSE,
LPCTSTR lpszName = NULL,
LPSECURITY_ATTRIBUTES lpsaAttribute = NULL
);
パラメーター
bInitiallyOwn
CMutex のオブジェクトを作成するスレッドにミューテックスによって制御されるリソースにアクセスできる場合は、指定します。lpszName
CMutex オブジェクトの名前。同じ名前を持つ別のミューテックスがある場合は、lpszName は、オブジェクトがプロセスの境界を越えて使用 minutes。null、ミューテックスがない場合は。名前が既存のミューテックスと一致する場合、コンストラクターは、その名前のミューテックスを参照する CMutex の新しいオブジェクトを構築します。名前がミューテックスではない既存の同期オブジェクトに一致する場合、構造体は失敗します。lpsaAttribute
Mutex オブジェクトのセキュリティ属性。この構造体の詳細については、Windows SDKの SECURITY_ATTRIBUTES を参照してください。
解説
CMutex のオブジェクトにアクセスまたは解放するために、CMultiLock または CSingleLock のオブジェクトを作成し、[ロック] と [ロック解除] のメンバー関数を呼び出します。CMutex のオブジェクトが使用されているスタンドアロン、それを解放するために Unlock のメンバー関数を呼び出します。
セキュリティに関するメモ |
---|
CMutex のオブジェクトを作成した後、ミューテックスが既に存在しなかったことを確認します GetLastError。ミューテックスが予期せずにある場合は、ミューテックスが非承認なプロセスによってしゃがんでが、悪意を使用する可能性があることを示す場合があります。この場合、推奨されるセキュリティに対する意識の高いプロシージャはハンドルを閉じ、オブジェクトの作成時にエラーがあるかのように従うことです。 |
必要条件
Header: afxmt.h