Jon*_*han 8 java synchronization
如果一个类有两个同步方法:
public class A {
public synchronized int do1() {...}
public synchronized void do2(int i) {...}
}
Run Code Online (Sandbox Code Playgroud)
在一行中调用这两个方法会导致死锁吗?
A a = new A();
a.do2(a.do1());
Run Code Online (Sandbox Code Playgroud)
请注意,在您的示例中,不会同时调用这两个方法.
它们之间有明确的严格顺序 - 在完成do2()之前不能调用do1()!
另请注意,代码相当于
A a = new A();
int temp = a.do1();
a.do2(temp);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
150 次 |
| 最近记录: |