【Java并發(fā)】1.9 yeild方法
yeild方法的作用是放棄當(dāng)前cpu的資源巡李,將它讓給其他任務(wù)去占用CPU執(zhí)行時(shí)間抖誉。但放棄時(shí)間不確定,可能剛剛放棄叽躯,馬上又獲得CPU時(shí)間片。
public class MyThread extends Thread {
@Override
public void run() {
long beginTime = System.currentTimeMillis();
int count = 0;
for (int j = 0; j < 5000000; j++) {
//Thread.yield();
count = count + (j+1);
}
long endTime = System.currentTimeMillis();
System.out.println("用時(shí):"+(endTime-beginTime)+"ms");
}
public static void main(String[] args) {
MyThread thread = new MyThread();
thread.start();
}
}
用時(shí)5ms
上面程序運(yùn)行耗時(shí)5ms氧苍,如果把Thread.yield()注釋取消夜矗,程序運(yùn)行:
用時(shí):462ms