日期:2014-05-19  浏览次数:20792 次

线程里synchronized的参数用什么?
我看到很多人用synchronized(参数)时,随便找个string,hashmap就作为参数了。

请问这个参数有什么用呢?synchronized不就是保证每个进来的线程结束后再放下一个线程进来,对吧?


------解决方案--------------------
哥,对象真的不是类,不骗你!
class 人
人 你 = new 人();
人 我 = new 人();

如果是
synchronized(你){
吃饭();
}
那么说明你只能一顿一顿吃,不能同时(多线程)吃好几顿饭;

如果是
synchronized(人.class){
吃饭();
}
那么只要我在吃饭,你就不能吃饭,得等我吃完!