我有两个主题ThreadA
(主要),方法j()
和k(){...j()...}
以及第二个主题ThreadB
。 ThreadA随机调用方法k()
,其中包括调用方法j()
。 ThreadB
随机调用方法j()
。
现在方法k()
和j()
无法在共享变量的同时执行。
如果ThreadB
当前没有执行方法j()
,如何确保ThreadA
只能调用方法k()
?此外ThreadB
j()
将在ThreadA
执行k()
后执行m()
。
我读到了synchronized关键字,但它似乎只能涵盖一种方法。 (例如,ThreadX和ThreadY都是访问方法 switch($condition){
case "options": blah(); break;
}
)。