私たちが持っているとしましょう
class A {
void m1() {
synchronized (this) {
}
blah blah blah
synchronized (this) {
}
}
}
私の疑問は、オブジェクト o を使用して現在実行中のスレッドがロックを解除しているときに、オブジェクト o を使用する他のスレッドがロックを取得すると、デッドロックが発生することです。では、同期メソッドの代わりに同期ブロックを使用しようとする必要があるとどのように言えますか?
スレッド t1 がクラス レベルのロックを取得する静的同期メソッドを実行するとします。他のスレッドは、このクラスのインスタンスのロックを取得して、他の同期メソッドを実行できますか?