Java中的sleep()和wait()

原创 2016年08月28日 21:46:34

最近在看Java线程相关的知识,故对Java中的sleep()和wait()这两个方法做一个笔记,以供自己查阅。

sleep()方法是Thread类的方法,wait()方法是Object类中的方法。
sleep()方法是Thread中的一个静态方法。它可以使当前的线程在特定的时间内进入“非运行”状态。在此期间,该线程保持它所持有的锁。
wait()方法是一个在Object类里的方法。它可以使当前的线程进入“非运行”状态。Wait在一个对象上被调用,而不是在线程上被调用。在调用wait()方法之前,对象应该是同步的,意味着对象应该在同步块里。线程对wait()的调用释放了锁。
sleep(milliseconds)自动醒过来,只能调用interreput()来强行打断;wait()可以用notify()直接唤起。
上面是我查阅资料后记的笔记,完整的描述在后面的链接里可以看见。

参考:1.http://www.java2novice.com/java_interview_questions/wait-sleep-difference/
2.https://www.zhihu.com/question/23328075
3.http://blog.csdn.net/liuzhenwen/article/details/4202967(赞)

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

Java常用面试题14 如何暂停线程Sleep和Wait 你能分清楚吗?

如何暂停线程 Sleep和Wait 你能分清楚吗?

JAVA—sleep()和wait()的区别

转载 sleep()和wait()的区别Java中的多线程是一种抢占式的机制而不是分时机制。线程主要有以下几种状态:可运行,运行,阻塞,死亡。抢占式机制指的是有多个线程处于可运行状态,但是只有一个线...

总结:Java多线程中wait和sleep的区别

一、对wait和sleep的个人理解 wait表示等待的意思,当线程调用wait方法时,线程将会处于等待状态,如果想要再次执行调用过wait方法的线程需要将其唤醒,使其脱离等待状态 sleep表示...

JAVA中关于wait()和sleep()

Java中的多线程是一种抢占式的机制,而不是分时机制。抢占式的机制是有多个线程处于可运行状态,但是只有一个线程在运行。  共同点 :  1. 他们都是在多线程的环境下,都可以在程序的调用处阻塞指定的毫...

JAVA之多线程yield(),sleep(),wait()区别

sleep() 使当前线程(即调用该方法的线程)暂停执行一段时间,让其他线程有机会继续执行,但它并不释放对象锁。也就是如果有Synchronized同步块,其他线程仍然不同访问共享数据。注意该方法...

JAVA wait(), notify(),sleep详解

在CSDN开了博客后,一直也没在上面发布过文章,直到前一段时间与一位前辈的对话,才发现技术博客的重要,立志要把CSDN的博客建好。但一直没有找到好的开篇的主题,今天再看JAVA线程互斥、同步的时候又有...

java线程中yield(),sleep(),wait()区别详解

1、sleep() 使当前线程(即调用该方法的线程)暂停执行一段时间,让其他线程有机会继续执行,但它并不释放对象锁。也就是说如果有synchronized同步快,其他线程仍然不能访问共享数据。注意该...

java中线程阻塞之sleep、suspend、join、wait、resume、notify方法解析(一)

java线程的5状态包括create、runnable、running、blocked、dead。 create是指用new线程被创建,但是还没有准备好各种资源。 runnable是指使用start启...

java之yield(),sleep(),wait()区别详解-备忘笔记

1、sleep() 使当前线程(即调用该方法的线程)暂停执行一段时间,让其他线程有机会继续执行,但它并不释放对象锁。也就是说如果有synchronized同步快,其他线程仍然不能访问共享...

java线程同步原理、wait,notify的用法及与sleep的区别

一。 java线程同步原理 java会为每个object对象分配一个monitor,当某个对象的同步方法(synchronized methods )或同步快被多个线程调用时,该对象的monit...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)