スコープを離れるときにリソースを解放する (この場合は ReadWriteLock のロックを解除する) 最良の方法は何ですか? 考えられるすべての方法 (リターン、ブレーク、例外など) をカバーするにはどうすればよいですか?
Dmitry Khalatov
質問する
1319 次
3 に答える
12
try/finally ブロックは、この動作に最も近いものです。
Lock l = new Lock();
l.lock(); // Call the lock before calling try.
try {
// Do some processing.
// All code must go in here including break, return etc.
return something;
} finally {
l.unlock();
}
于 2008-09-30T06:05:11.287 に答える
2
マイクが言ったように、最後のブロックはあなたの選択でなければなりません。それが述べられているfinallyブロックチュートリアルを参照してください:
finallyブロックは、tryブロックが終了するときに常に実行されます。これにより、予期しない例外が発生した場合でも、finallyブロックが確実に実行されます。
于 2008-09-30T06:20:14.540 に答える