19/09/17 23:40:43.31 ZBXs33c7.net
>>87
CCriticalSection cs;
void B_Core() {
/*元々のB()でやろうとしていた処理・lockは抜き*/
}
void A() {
CSingleLock lock( &cs, TRUE ) ;
...
B_Core(); // A()の中からはB()の代わりにこれを呼ぶ
...
}
void B() {
CSingleLock lock( &cs, TRUE );
B_Core();
}
もちろんB_Core()は外部から呼べないようにするべきである。