这两者的施加者是有本质区别的.
sleep()是让某个线程暂停运行一段时间,其控制范围是由当前线程决定,也就是说,在线程里面决定.好比如说,我要做的事情是 "点火->烧水->煮面",而当我点完火之后我不立即烧水,我要休息一段时间再烧.对于运行的主动权是由我的流程来控制.而wait(),首先,这是由某个确定的对象来调用的,将这个对象理解成一个传话的人,当这个人在某个线程里面说"暂停!",也是thisOBJ.wait(),这里的暂停是阻塞,还是"点火->烧水->煮饭",thisOBJ就好比一个监督我的人站在我旁边,本来该线程应该执行1后执行2,再执行3,而在2处被那个对象喊暂停,那么我就会一直等在这里而不执行3,但正个流程并没有结束,我一直想去煮饭,但还没被允许,直到那个对象在某个地方说"通知暂停的线程启动!",也就是thisOBJ.notify()的时候,那么我就可以煮饭了,这个被暂停的线程就会从暂停处继续执行.其实两者都可以让线程暂停一段时间,但是本质的区别是一个线程的运行状态控制,一个是线程之间的通讯的问题

=============================================================================================

线程wait()和sleep()的区别相关推荐

  1. Go中线程和协程的区别

    1. 协程是什么 ? 在go语言中,协程被认为是轻量级的线程, 和线程不同的是,操作系统内核 感知不到协程的存在, 协程的管理依赖于Go语言运行时自身提供的调度器 同时Go语言中的协程是从属于某一个线 ...

  2. 怎么更进一步学python_【百尺竿头,更进一步学Python】Python进阶课程——进程,线程和协程的区别...

    本文带来各类奇怪的IT百科知识. [百尺竿头,更进一步学Python]Python进阶课程--进程:线程和协程的区别 现在多进程多线程已经是老生常谈了:协程也在最近几年流行起来.今天我们本文主要介绍进 ...

  3. CPU的核心数、线程数的关系和区别

    我们在选购电脑的时候,CPU是一个需要考虑到核心因素,因为它决定了电脑的性能等级.CPU从早期的单核,发展到现在的双核,多核.CPU除了核心数之外,还有线程数之说,下面笔者就来解释一下CPU的核心数与 ...

  4. 进程、线程、纤程的区别

    相信很多童鞋在面试的时候,面试官都会提这样的一个问题. 请你说说什么是进程,什么是线程,两者有什么区别? 很多童鞋遇到这样的提问可能会这样回答,进程就是一个程序运行起来的状态,而线程是一个进程中不同的 ...

  5. 线程池大小设置,CPU的核心数、线程数的关系和区别,同步与堵塞完全是两码事

    线程池应该设置多少线程合适,怎么样估算出来.最近接触到一些相关资料,现作如下总结. 最开始接触线程池的时候,没有想到就仅仅是设置一个线程池的大小居然还有这么多的学问,汗颜啊. 首先,需要考虑到线程池所 ...

  6. 到底什么是线程?线程与进程有哪些区别?

    上一篇文章我们讲述了什么是进程,进程的基本调度 http://t.csdn.cn/ybiwThttp://t.csdn.cn/ybiwT 那么本篇文章我们将了解一下什么是线程?线程与进程有哪些区别?线 ...

  7. cpu核数和逻辑个数的区别_解释一下CPU的核心数与线程数的关系和区别

    我们在选购电脑的时候,CPU是一个需要考虑到核心因素,因为它决定了电脑的性能等级.CPU从早期的单核,发展到现在的双核,多核.CPU除了核心数之外,还有线程数之说,下面文本就来解释一下CPU的核心数与 ...

  8. cpu核数和逻辑个数的区别_CPU的核心数与线程数的关系和区别

    我们在选购电脑的时候,CPU是一个需要考虑到核心因素,因为它决定了电脑的性能等级.CPU从早期的单核,发展到现在的双核,多核.CPU除了核心数之外,还有线程数之说,下面就来解释一下CPU的核心数与线程 ...

  9. python协程和线程区别_Python中进程、线程、协程及其区别

    以下为复制内容: https://blog.csdn.net/mr__l1u/article/details/81772073 1> 进程.线程和协程的认识: 进程是系统进行资源分配和调度的独立 ...

  10. 线程sleep 和wait 的区别

    线程sleep 和wait 的区别: 这两个方法来自不同的类分别是Thread和Object 最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法. wai ...

最新文章

  1. 光缆能预警地震?谷歌做到了!毫秒级反应速度,140万公里海缆有望成为报警器...
  2. python统计元素个数_python怎么统计列表中元素的个数
  3. python爬网页源码_python爬虫爬取网页的内容和网页源码不同?
  4. Vue中JS遍历后台JAVA返回的Map数据,构造对象数组数据格式
  5. oracle报错无效列类型,jooq oracle存储过程与ARRAY,无效列类型:1111
  6. linux下移除环境变量及mkdir命令介绍
  7. linux打开光盘文件怎么打开方式,ISO是什么文件?用什么打开?
  8. 互联网之“死”:为什么开发者会排斥新技术?
  9. [HTML] 表单和输入
  10. C#基础知识之图解TCP IP》读书笔记
  11. 自然语言处理——用逻辑回归来实现情绪识别
  12. 坐飞机还是尽量早点出发(差点误机)
  13. aba问题实际中有什么影响_实际影响是什么?
  14. matlab液压仿真实例,基于MATLAB-simulink的液压系统动态仿真.pptx
  15. 三极管9013 9014 跟8050之间有什么区别,
  16. 亚控科技工作中的编程知识小积累
  17. 使用FFmpeg工具将一个图片和一个音频合成一个视频以及在window系统下使用脚本运行
  18. Problem E: 求方程ax^2+bx+c=0的实数根
  19. MyCat2分库分表的基本操作
  20. 简单的java程序代码?

热门文章

  1. QT的QGraphicsView类的使用
  2. C++和Python的交互
  3. 通过MapReduce统计每个单子在每个文件中出现的次数(FileSplit的使用),单词作为key,所在文本和次数作为value进行统计
  4. UDP(socket)接和数据案例封装成C++代码
  5. Linux下C语言执行过程(预处理,编译,汇编,链接,执行)
  6. 电机高频注入原理_永磁同步电机转子位置与速度估算的新方法,精度好,性价比高...
  7. xilinx soc学习笔记之在Ubuntu上安装Qt 5
  8. Python简单前序创建二叉树及二叉树的遍历
  9. ROS学习之节点间话题通信的
  10. ES6新特征总结与介绍——声明与表达式