Java 学习笔记之 线程Yield
2024-09-01 10:34:17
线程Yield:
yield()方法的作用是放弃当前的CPU资源,将它让给其他的任务去占用CPU执行时间,但放弃的时间不确定,有可能刚刚放弃,马上又获得CPU时间片。
public class YieldThread extends Thread{
@Override
public void run() {
long beginTime = System.currentTimeMillis();
int count = 0;
for (int i = 0; i< 50000000; i++){
//Thread.yield();
count = count + (i + 1);
}
long endTime = System.currentTimeMillis();
System.out.println("CostTime: " + (endTime - beginTime) + "ms");
}
} public class ThreadRunMain {
public static void main(String[] args) {
testYieldThread(); }
public static void testYieldThread(){
YieldThread yt = new YieldThread();
yt.start();
}
}
运行结果:
第一次运行结果
去掉Thread.yield();注释,再次运行,运行时间明显变长。
最新文章
- iOS Block界面反向传值
- Gollum 安装笔记
- django 同步数据库
- 【翻译】利用Qt设计师窗体在运行时创建用户界面(Creating a user interface from a Qt Designer form at run-time)
- Git-rebase 小笔记
- Java 执行 SQL 脚本文件
- (转)IE劫持原理 BHO
- poj 1185 火炮 (减少国家DP)
- springmvc中返回页面,只在iframe中跳转,而不是整个页面,解决方法。
- word2010无法打开文件时的一点对策
- 我的学习之路_第二十三章_HTML
- js 客户端打印html 并且去掉页眉、页脚
- Dynamics CRM 在报表中获取当前登陆用户的guid
- 信号报告-java
- Angular 实现Bootstrap ScrollSpy控件
- vagrant设置虚拟机的名字
- TVS二极管和稳压二极管的区别
- oozie 客户端常用命令
- mac 连接windows 共享内容
- SQL server 2012 阻塞分析查询