有关4-1线程同步课程中有个问题想请教一下老师

来源:4-1 线程同步

Mitsushima_Hikari

2018-07-30 22:26:30

http://img.mukewang.com/climg/5b5f20050001252103790035.jpg

如果加了 Synchronized关键字,那之前的sleep方法是否可以去掉?因为synchronized 关键字是为了让共享对象在同一时刻只被一个线程访问,所以我觉得加不加sleep()方法已经没有意义了,因为sleep方法并不能解决需求中线程同步问题,我不知道这么理解是否正确,请老师给予解答

写回答

1回答

irista23

2018-07-31

被synchronized作用的对象,线程sleep后,马上别的线程会接着执行。虽然不会释放之前持有的锁,sleep能够让低优先级的线程有机会运行。

1
hrista23
回复
hitsushima_Hikari
h synchronized 同步锁只锁住了对象执行的代码块,其他线程还是可以正常执行没有加锁的代码,多线程每个子线程都是交替执行的。
h018-07-31
共2条回复

0 学习 · 7235 问题

查看课程