黑马程序员技术交流社区

标题: 同步函数 小问题 [打印本页]

作者: 王秋霞0812    时间: 2014-1-22 12:56
标题: 同步函数 小问题
本帖最后由 王秋霞0812 于 2014-1-23 18:37 编辑

什么是同步函数  同步代码块
二者定义格式是什么?
二者有什么区别 ?

作者: 路国强    时间: 2014-1-22 14:30
给你列个示例代码
同步代码块的:
synchronized(对象){
        需要被同步的代码
}
同步函数的:
public synchronized void add(int a, int a){
    System.out.println(a+b);
}
区别:锁不同,同步函数的锁是this;同步代码块的锁是obj
作者: panzhenglian    时间: 2014-1-22 14:42
基于二楼的回答,补充一点个人看法,同步代码块是函数中的一段被同步的代码,同步代码块的锁,是建立该代码块时参数里面所添加的对象,不仅仅是Object,例如:

synchronized( p对象){执行代码...}
synchronized(p对象){执行代码....}
这虽然是两段代码块,但是锁相同,只允许一个线程去执行,




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2