こんな感じで使える機能のクラス名・メソッド名はどんなのがいいでしょうか。
単一スレッドで多重的に呼ばれうるコードを保護するのが目的で、
あまりマルチスレッドを連想させない物がいいです。

bool TryEnter(void *p)
{
   if(Hash[p]) return false;
   Hash[p] = true;
   return true;
}

Leave(void *p)
{
   Hash[p] = false;
}

sample

if(TryEnter(object))
{
   ...
   Leave(object);
}