亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

你好,請問在Java中yield()方法該怎么使用呢?

你好,請問在Java中yield()方法該怎么使用呢?

慕娘9325324 2022-01-06 17:07:53
import java.lang.Thread;//讓出CPU,給其他進程執行機會public class ThreadTest6_Yield{public static void main(String[] args){MyThread3 t1 = new MyThread3("A-----");MyThread3 t2 = new MyThread3("B=====");t1.start();t2.start();}}class MyThread3 extends Thread {MyThread3(String s){super(s);}public void run(){for(int i=1;i<=100;i++){System.out.println(getName()+" : "+i);if(i%10==0)yield();}}}這段代碼運行的結果為什么不是10個A和10個B交叉輸出呢?
查看完整描述

2 回答

?
慕絲7291255

TA貢獻1859條經驗 獲得超6個贊

Thread.yield( )方法:
使當前線程從執行狀態(運行狀態)變為可執行態(就緒狀態)。cpu會從眾多的可執行態里選擇,也就是說,剛剛的那個線程還是有可能會被再次執行到的,并不是說一定會執行其他線程了。

查看完整回答
反對 回復 2022-01-10
?
慕的地8271018

TA貢獻1796條經驗 獲得超4個贊

你好,線程調度是有操作系統控制的,不是輪詢的,可以加入線程優先級控制

查看完整回答
反對 回復 2022-01-10
  • 2 回答
  • 0 關注
  • 152 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號