记下线程中sleep()与wait()的区别
来源:互联网 发布:面向对象java试题 编辑:程序博客网 时间:2024/06/07 09:55
sleep()方法(休眠)是线程类(Thread)的静态方法,调用此方法会让当前线程暂停执行指定的时间,
将执行机会(CPU)让给其他线程,但是对象的锁依然保持,因此休眠时间结束后会自动恢复(线程回到就绪状态,请参考第66题中的线程状态转换图)。
wait()是Object类的方法,调用对象的wait()方法导致当前线程放弃对象的锁(线程暂停执行),进入对象的等待池(wait pool),只有调用对象的notify()方法(或notifyAll()方法)时才能唤醒等待池中的线程进入等锁池(lockpool),如果线程重新获得对象的锁就可以进入就绪状态
可能不少人对什么是进程,什么是线程还比较模糊,对于为什么需要多线程编程也不是特别理解。
简单的说:
进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,是操作系统进行资源分配和调度的一个独立单位;
线程是进程的一个实体,是CPU调度和分派的基本单位,是比进程更小的能独立运行的基本单位。线程的划分尺度小于进程,这使得多线程程序的并发性高;进程在执行时通常拥有独立的内存单元,而线程之间可以共享内存。
0 0
- 记下线程中sleep()与wait()的区别
- 线程中有关wait()和sleep()的区别
- java线程中sleep与wait方法的区别
- java线程中sleep()与wait()的区别?
- java线程wait与sleep的区别
- 线程中sleep和wait的区别
- 线程中sleep和wait的区别
- 线程中sleep和wait的区别
- 线程中sleep()和wait()的区别
- 线程中Sleep()、Wait()区别
- Java中sleep()与wait()的区别
- java 中sleep 与 wait 的区别
- Java中sleep() 与wait()的区别
- Java中sleep()与wait()的区别
- Java中sleep()与wait()的区别
- Java中sleep()与wait()的区别
- Java中sleep()与wait()的区别
- Java中sleep()与wait()的区别
- 异步加载图片(一)
- Java设计模式--责任链模式
- NRF24L01相关宏定义及注释
- 异步加载图片(二)
- test code
- 记下线程中sleep()与wait()的区别
- android 视频截图笔记
- java源码学习5-ClassLoader
- Java设计模式--工厂模式
- iOS中常见 Crash 及解决方案
- 初步理解BFC
- Android Button实现方式
- C语言(2)------标识符和关键字
- java中常见的异常1——静态对象调用非静态对象