class Outputer{
public void output(String s){
String xx="";
synchronized(xx){ //注意互斥在这里必须是同一个对象,现在这个s 还是不是同一个对象
//可以看出两个用的都是outputer这个对象,所以同步机制应该加在outputer上面
for(int i=0;i<s.length();i++){
System.out.print(s.charAt(i));
}
System.out.println();
}
}
这是张孝祥老师的视频讲课的时候演示的代码,我知道他说的同步的那部分必须要是同一个对象。
一开始synchronized(xx)括号里面弄的s ,然后改成这个xx,这怎么就是同一个对象。怎么能保证同步了 |
|