作业帮 > 综合 > 作业

谁能帮我理解一下thread.yield()是什么?怎么用?最好能举一个完整的例子出来让我理解,里面还要加一些注释

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/29 11:59:57
谁能帮我理解一下thread.yield()是什么?怎么用?最好能举一个完整的例子出来让我理解,里面还要加一些注释
在多线程程序中,为了防止某线程独占CPU资源(这样其它的线程就得不到"响应"了).可以让当前执行的线程"休息"一下.但是这种thread.yield() 调用,并不保证下一个运行的线程就一定不是该线程.
可以考虑用Thread.sleep(long millis);方法强制当前线程睡眠至少millis毫秒.但是使用时要对该方法捕获.
调用方法很简单,只要在要睡眠的线程中加入
Thread.yield();
或者
try {
Thread.sleep(100);//睡眠100毫秒
} catch (Exception e) {
e.printStackTrace();
}
就行了.