在try{}catch(){}中如何合理使用临界对象?
临界对象:lockObject形如:
try{
lockObject.lock();
...
lockObject.Unlock();
}
catch(...){
lockObject.Unlock(); //这里也要加吧,有可能从try块中流程转到这里了,所以并没有执行到try中的Unlock
}
临界对象:lockObject形如:
try{
lockObject.lock();
...
lockObject.Unlock();
}
catch(...){
lockObject.Unlock(); //这里也要加吧,有可能从try块中流程转到这里了,所以并没有执行到try中的Unlock
}
{
lockObject.lock();
}
catch(...)
{
}
finally
{
lockObject.Unlock();
}
try
{
lockObject.lock();
}
catch(...)
{
}
finally
{
lockObject.Unlock();
}
编绎不通
{
lockObject.lock();
}
catch(...)
{
}
lockObject.Unlock();