什么时候用javaThread的sleep方法,怎么判断使用时机?

2024-11-24 06:41:21
推荐回答(2个)
回答1:

标准的答案!sleep()方法是属于线程本身的,直接调用Thread.sleep(毫秒数)就可以使用
sleep()主要是让当前线程进入休眠状态,不会释放锁,把时间片让给其他线程,等休眠时间结束,再继续执行。这里的再继续执行不是立马执行,也许并发时候,某一个线程优先级比较高,那么即使是休眠结束也不会执行,还得优先级高的先执行。
使用几个线程不用sleep()肯定可以运行啊!因为时间片在不停的轮转,你运行一会,我运行一会,轮流运行。。。
不是同步的线程获得锁是随机的而是获得时间片是随机的,synchronized处理锁机制,你好好看看吧!而且当指定优先级或有其他条件影响的时候,其实时间片也相当于不是随机的,必定优先级高的会先运行。

回答2:

Java thread.sleep怎么用