Thread.yield()方法表示交出主动权,join表示等待当前线程,可以指定秒数
生活随笔
收集整理的這篇文章主要介紹了
Thread.yield()方法表示交出主动权,join表示等待当前线程,可以指定秒数
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Thread.yield()方法表示交出主動權(quán),join表示等待當(dāng)前線程,可以指定秒數(shù)
學(xué)習(xí)了:http://www.importnew.com/14958.html 膜拜一下
源碼膜拜:
Thread.yield()沒準(zhǔn),順序輸出不一定;
package com.stono.thread;public class YieldExample {public static void main(String[] args) {Thread producer = new Producer();Thread consumer = new Consumer();producer.setPriority(Thread.MIN_PRIORITY);consumer.setPriority(Thread.MAX_PRIORITY);producer.start();consumer.start();} }class Producer extends Thread{@Overridepublic void run() {for(int i=0;i<5;i++){System.out.println("I am Producer: Procuded Item ============="+ i);Thread.yield();}} }class Consumer extends Thread{@Overridepublic void run() {for(int i=0;i<5;i++){System.out.println("I am consumer: Consumed Item "+i);Thread.yield();}} }Join表示要等待當(dāng)前線程,可以指定等待的毫秒數(shù);
package com.stono.thread;import java.util.concurrent.TimeUnit;public class JoinExample {public static void main(String[] args) throws InterruptedException {Thread t = new Thread(new Runnable() {public void run() {System.out.println("First task started");System.out.println("Sleeping for 2 seconds");try {//Thread.sleep(2000);TimeUnit.SECONDS.sleep(2);} catch (Exception e) {e.printStackTrace();}System.out.println("First task complete");}});Thread t1 = new Thread(new Runnable() {public void run() {System.out.println("Second task completed");}});t.start();t.join();// t.join(100); // 這個表示等待100毫秒 t1.start();} }?
轉(zhuǎn)載于:https://www.cnblogs.com/stono/p/8341750.html
總結(jié)
以上是生活随笔為你收集整理的Thread.yield()方法表示交出主动权,join表示等待当前线程,可以指定秒数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 37.cgi网页交互
- 下一篇: [No0000119]什么是柳比歇夫的时