Thread详解4:线程的优先级
来源:互联网 发布:linux服务器端口不通 编辑:程序博客网 时间:2024/05/27 00:38
先来瞄一瞄源码。
/** * The minimum priority that a thread can have. */ public final static int MIN_PRIORITY = 1; /** * The default priority that is assigned to a thread. */ public final static int NORM_PRIORITY = 5; /** * The maximum priority that a thread can have. */ public final static int MAX_PRIORITY = 10;
所以线程的优先级,最小1,最大10,一般5。这个一般的含义体现在哪呢? 接着看我截取的源码,该源码是新建一个线程的初始化程序中的几步:
Thread parent = currentThread(); this.daemon = parent.isDaemon(); this.priority = parent.getPriority(); setPriority(priority);
这几行代码总结为一句话就是:
如果A线程新建的B线程,则B线程的优先级与A线程一样。这也称之为线程优先级的继承特性。
然后,main线程的优先级默认是5,所以一般不去setPriority,线程的优先级就都是5。
优先级有什么用呢? 一般来讲,高优先级的线程总是大部分先执行完,但不代表高优先级的线程总是全部先执行完。这是因为线程的调用具有随机性。
0 0
- Thread详解4:线程的优先级
- 线程的优先级、Thread.yield()、Thread.sleep(5000)
- JAVA多线程Thread setPriority 设置线程优先级方法入门详解
- android 改变线程优先级Change Thread Priority
- 改变线程优先级Change Thread Priority
- java线程thread详解
- Thread(线程)详解1
- RT-Thread的优先级算法
- ARM官方《CMSIS-RTOS教程》之线程的管理和优先级Thread Management and Priority
- 线程的优先级
- 线程的优先级
- 线程的优先级
- 线程的优先级
- 线程的优先级
- 线程的优先级
- 线程的优先级
- 线程的优先级
- 线程的优先级
- instantClient sqlPlus 连接oracle
- iOS --- OpenGLES之图片纹理
- 组合查询的小问题
- 《Linux内核设计与实现》——第5章(系统调用)
- mybatis中xml格式的mapper文件中接收入参时#和$的区别?
- Thread详解4:线程的优先级
- 让Docker功能更强大的10个开源工具
- ReactiveCocoa使用记录
- 关于安装GenyMotion的一些小经验
- 作业调度算法
- sqlalchemy 笔记
- 剑指offer 反向遍历链表
- hamcrest-core:jar:1.3和junit 4.12冲突
- C++各数据类型取值范围(备忘)--32位操作系统