发布网友 发布时间:2022-05-02 04:06
共3个回答
热心网友 时间:2022-06-28 01:31
synchronized同步代码块,用于进行多线程同步使用,你所指的申明的对象,其实是线程锁,当一个线程执行到synchronized时,锁就被锁定,其他线程进不来,只能在外面等待,之所以不把锁对象省略是因为不同的需求需要不同的锁,必须两个线程用的是同一个类的两个实例对象呢,每一个对象的this是不同的两个对象,这个时候就锁不住了,所以这个时候应该用a.class热心网友 时间:2022-06-28 01:31
synchronized (obj)提供这样的写法也许是为了锁其他对象把,如果java只提供synchronized {代码块}这样的写法,那岂不是强制开发者去锁整个类啦,当实际中,我们并不一定要锁整个类,所以就提供了一个可以传参数的写法吧热心网友 时间:2022-06-28 01:32
加上static就表示是类的,而不是当前变量的了。