Java线程状态知识点
来源:互联网 发布:川崎机器人编程手册 编辑:程序博客网 时间:2024/05/29 10:51
Thread和Runnable实现线程的异同
相同点
- 都是多线程实现的方式
不同点
Thread是类,而Runnable是接口;Thread是实现了Runnable接口的类。
Runnable具有更好的扩展性,即多个线程都是基于某一个Runnable对象建立的,它们会共享Runnable对象的资源。
Thread类包含的start()和Run()方法的区别
start():它的作用是启动一个新的线程,新线程会执行相应的Run()方法;start()不能被重复调用。
run():与普通的成员方法一样,可以被重复调用。单独调用会在当前线程中执行run(),而不会启动新线程。
线程状态sleep()、yield()、wait()区别
sleep()会给其他线程运行的机会,而不考虑其他线程的优先级,因此会给较低优先级的线程一个运行的机会;yield()只会给不小于自己优先级的线程一个运行的机会。
当线程执行sleep()方法后,参数long millis指定睡眠时间,转到阻塞状态;当线程执行yield()方法后进入就绪状态。
sleep()方法声明抛出InterruptedException异常,而yield()方法没有声明异常。
sleep()比yield()方法具有更好的移植性
线程调用自身的sleep()或者其他线程的join()方法,进入阻塞状态,该状态停止当前线程但不释放资源,当sleep()或者join()的线程结束以后进入就绪状态
Object.wait()对象锁,释放资源,notify()唤醒回到wait()前中断现场。
0 0
- Java线程状态知识点
- Java线程:线程状态
- java知识点-java线程
- Java线程知识点
- java线程同步知识点
- java线程知识点
- JAVA线程知识点
- java线程学习知识点
- Java线程常用知识点
- JAVA线程知识点
- Lua知识点3_线程和状态
- Java线程与线程状态
- java线程状态管理
- Java 线程状态
- java线程(一) 状态
- Java线程状态
- Java线程状态转换
- Java多线程:线程状态
- Linux文件基本介绍
- 基本排序算法--快速排序
- 使用.NET中的XML注释(二) -- 创建帮助文档入门篇
- PorterDuff及Xfermode详解
- [笔记][Java7并发编程实战手册]4.3 创建固定的线程执行器newFixedThreadPool线程池
- Java线程状态知识点
- python--利用有道网址编写一个翻译句子的程序
- IOS启动动流程
- iOS学习(1)
- 基于node-red工具实现自定义节点
- iOS应用架构谈 网络层设计方案
- 沉默的阿福
- java的IO之字符流字节流
- 使用Docker部署Spark集群