同じクラスに次の 2 つのメソッドがある場合。
bool CSettings::GetDelayTimer()
{
return m_iTimerDelay;
}
void CSettings::SetDelayTimer(int iTimerdelay)
{
m_iTimerDelay = iTimerdelay;
}
上記のメソッドを同期するために、次のロック/ロック解除メソッドを作成しました。
void CSettings::Lock()
{
DWORD dwRet = WaitForSingleObject(m_hSettingsLock, INFINITE);
if( dwRet == WAIT_OBJECT_0)
return;
}
void CSettings::UnLock()
{
ReleaseMutex(m_hSettingsLock);
}
ロック/ロック解除を使用してこれらのゲッター/セッター メソッドを同期するにはどうすればよいですか。ゲッターメソッドでロックを使用すると、ロックを解除する前に返されるため、ロックを解除する機会がありません。私が言いたいのは: Lock(); m_iTimerDelay を返します。ロック解除(); うまくいきますか?Lock/UnLock を setter に適用しても問題ありません。
これらのメソッドを同期するアイデアはありますか?
よろしく、クラム。