大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

Java面向?qū)ο?/div>
Java異常
Java數(shù)組
Java常用類
Java集合
Java IO流
Java線程
Java反射
Socket編程
Java注解開發(fā)
Java GoF設(shè)計(jì)模式
HashMap
Java內(nèi)存模型
Java線性表

Java線程調(diào)度

Java線程優(yōu)先級(jí)

package com.wkcto.chapter07.method;
/**
 * 線程優(yōu)先級(jí)
 * 	1) 優(yōu)先級(jí)的取值范圍: 1 ~ 10
 * 	2) 所有線程默認(rèn)的優(yōu)先級(jí); 5
 * 	3) 優(yōu)先級(jí)越高, 獲得CPU執(zhí)行權(quán)的機(jī)率越大
 * 	4) t1.setPriority( 10 )  設(shè)置線程優(yōu)先級(jí)
 * @author 蛙課網(wǎng)
 *
 */
public class Test04 {

	public static void main(String[] args) {
		Thread t1 = new Thread(new Runnable() {
			@Override
			public void run() {
				for(int i = 1; i <= 100; i++){
					System.out.println( Thread.currentThread().getName() + "-->" + i);
				}
			}
		} , "t1");
		t1.setPriority(1); 				//設(shè)置優(yōu)先級(jí)
		t1.start();
		
		Thread t2 = new Thread(new Runnable() {
			@Override
			public void run() {
				for(int i = 1; i <= 100; i++){
					System.out.println( Thread.currentThread().getName() + "-->" + i);
				}
			}
		} , "t2");
		t2.setPriority(10); 		//設(shè)置優(yōu)先級(jí)
		t2.start();
		
		//打印線程的優(yōu)先級(jí)
		System.out.println( "t1 priority: " + t1.getPriority());
		System.out.println( "t2 priority: " + t2.getPriority());
		System.out.println( "main priority: " + Thread.currentThread().getPriority());
		
		//main線程
		for(int i = 1; i <= 100; i++){
			System.out.println( Thread.currentThread().getName() + "-->" + i);
		}
	}

}
Java線程睡眠
package com.wkcto.chapter07.method;
/**
 * 線程睡眠 ( 休眠 )
 * 	 Thread.sleep( 2000 );
 * 		1) 是靜態(tài)方法, 通過Thread類名直接調(diào)用
 * 		2) 睡眠的單位 是毫秒, 1秒 == 1000 毫秒
 * 		3) sleep()有受檢異常需要預(yù)處理
 * 		4) sleep()方法所在的線程睡眠 
 * @author 蛙課網(wǎng)
 *
 */
public class Test05 {

	public static void main(String[] args) {
		Thread t1 = new Thread(new Runnable() {
			@Override
			public void run() {
				for( int i = 1 ; i<=100; i++){
					System.out.println( Thread.currentThread().getName() + "--> " + i);
					//當(dāng) i == 50 時(shí), 線程休眠
					if ( i == 50 ) {
						//run()是重寫了Runnable接口中run(),不能聲明拋出異常,只能捕獲處理
						try {
							Thread.sleep(3000);			//睡眠3秒
						} catch (InterruptedException e) {
							e.printStackTrace();
						}
					}
				}
			}
		}, "t1");
		t1.start();
		
//		t1 = null;
		//main線程
		for( int i = 1 ; i<=100; i++){
			System.out.println( Thread.currentThread().getName() + "-----> " + i);
			//當(dāng)i==10時(shí), 讓t1線程睡眠 
			/*try {
				t1.sleep(3000); 		//雖然是t1調(diào)用,實(shí)際上是main線程睡眠 
			} catch (InterruptedException e) {
				e.printStackTrace();
			}*/
		}
		
		System.out.println( t1.getState() );  		//TIMED_WAITING , t1處于sleep()睡眠 狀態(tài)
	}

}
Java線程中斷
package com.wkcto.chapter07.method;
/**
 * 線程中斷
 * 		t1.interrupt();		中斷t1線程
 * 		一般是把處于睡眠 / 等待中的線程給喚醒 
 * 
 * @author 蛙課網(wǎng)
 *
 */
public class Test06 {

	public static void main(String[] args) {
		Thread t1 = new Thread(new Runnable() {
			@Override
			public void run() {
				for( int i = 1 ; i<=100; i++){
					System.out.println( Thread.currentThread().getName() + "--> " + i);
					//當(dāng) i == 50 時(shí), 線程休眠
					if ( i == 50 ) {
						try {
							Thread.sleep(10000);			//睡眠10秒
						} catch (InterruptedException e) {
//							e.printStackTrace();
						}
					}
				}
			}
		}, "t1");
		t1.start();
		
		//main線程
		for( int i = 1 ; i<=100; i++){
			System.out.println( Thread.currentThread().getName() + "--> " + i);
		}
		
		//當(dāng)main線程結(jié)束 , 把t1線程喚醒
		t1.interrupt();  		//中斷t1線程的睡眠, 會(huì)拋出中斷異常
		
//		System.out.println( t1.isInterrupted() );
	}

}
package com.wkcto.chapter07.method;
/**
 * 判斷線程的中斷狀態(tài)
 * 		t1.isInterrupted(), 實(shí)例方法判斷線程的中斷狀態(tài), 返回true后,不會(huì)清除線程的中斷標(biāo)志
 * 		Thread.interrupted(), 靜態(tài)方法判斷線程的中斷狀態(tài), 如果返回true表示線程被中斷了, 然后會(huì)清除線程的中斷標(biāo)志
 * 				再判斷線程的中斷狀態(tài)時(shí), 就是false
 * @author 蛙課網(wǎng)
 *
 */
public class Test07 {

	public static void main(String[] args) {
		Thread t1 = new Thread(new Runnable() {
			@Override
			public void run() {
//				如果線程沒有被中斷,就一直打印字符串
				while( ! Thread.currentThread().isInterrupted() ){
					System.out.println( "wkcto");
				}
				System.out.println("11 : " + Thread.currentThread().isInterrupted()); 
			}
		});
		t1.start();
		
		Thread t2 = new Thread(new Runnable() {
			@Override
			public void run() {
//				如果線程沒有被中斷,就一直打印字符串
				while( ! Thread.interrupted() ){
					System.out.println( "bjpowernode");
				}
				System.out.println("22 : " + Thread.currentThread().isInterrupted()); 
			}
		});
		t2.start();
		
		// main線程
		for (int i = 1; i <= 50; i++) {
			System.out.println(Thread.currentThread().getName() + "--> " + i);
		}
		
		//main線程結(jié)束, 就中斷t1線程
		t1.interrupt();
		t2.interrupt();
	}

}

Java線程讓步

package com.wkcto.chapter07.method;
/**
 * 線程讓步
 * 		Thread.yield(); 
 * 		把運(yùn)行中的線程轉(zhuǎn)換為就緒狀態(tài)
 * @author 蛙課網(wǎng)
 *
 */
public class Test08 {

	public static void main(String[] args) {
		Thread t1 = new Thread(new Runnable() {
			@Override
			public void run() {
				for (int i = 1; i <= 100; i++) {
					System.out.println(Thread.currentThread().getName() + "--> " + i);
					//當(dāng) i的值是10的倍數(shù)時(shí), 線程讓步
					if ( i % 10 == 0) {
						Thread.yield();  	//轉(zhuǎn)換為就緒狀態(tài)
					}
				}
			}
		} , "t1");
		t1.start();
		
		Thread t2 = new Thread(new Runnable() {
			@Override
			public void run() {
				for (int i = 1; i <= 100; i++) {
					System.out.println(Thread.currentThread().getName() + "-====> " + i);
				}
			}
		} , "t2");
		t2.start();
	}

}

Java線程合并

package com.wkcto.chapter07.method;
/**
 * 線程合并
 * 		t1.join();  	在當(dāng)前線程中加入t1線程,當(dāng)前線程轉(zhuǎn)為等待狀態(tài), 等到t1線程執(zhí)行完畢后,當(dāng)前線程再轉(zhuǎn)為就緒狀態(tài)
 * @author 蛙課網(wǎng)
 *
 */
public class Test09 {

	public static void main(String[] args) {
		Thread t1 = new Thread(new Runnable() {
			@Override
			public void run() {
				for (int i = 1; i <= 100; i++) {
					System.out.println(Thread.currentThread().getName() + "--> " + i);
				}
			}
		} , "t1");
		t1.start();
		
		Thread t2 = new Thread(new Runnable() {
			@Override
			public void run() {
				for (int i = 1; i <= 100; i++) {
					System.out.println(Thread.currentThread().getName() + "-====> " + i);
					//當(dāng)i==10時(shí), 把t1線程合并進(jìn)來
					if ( i == 10 ) {
						try {
//							t1.join();   	//現(xiàn)在加入t1線程,  當(dāng)前線程轉(zhuǎn)為等待狀態(tài), 等到t1執(zhí)行完后,t2當(dāng)前線程再轉(zhuǎn)為就緒狀態(tài)
							t1.join(1000);  //如果當(dāng)前線程等待1000毫秒后, 不管t1線程是否結(jié)束 ,都會(huì)轉(zhuǎn)為就緒狀態(tài)
						} catch (InterruptedException e) {
							e.printStackTrace();
						} 		
					}
				}
			}
		} , "t2");
		t2.start();
	}

}

Java線程終止

package com.wkcto.chapter07.method;
/**
 * 終止線程
 * 	相辦法讓run()結(jié)束 
 * 	可以為線程設(shè)計(jì)一個(gè)布爾標(biāo)志, 在run()方法中定期判斷這個(gè)標(biāo)志,來決定是否結(jié)束 run()
 * @author 蛙課網(wǎng)
 *
 */
public class Test11 {

	public static void main(String[] args) {
		SubThread1 thread1 = new SubThread1();
		thread1.start();
		
		Prime3 prime3 = new Prime3();
		Thread t2 = new Thread(prime3);
		t2.start();
		
		//main線程
		for (int i = 1; i <= 50; i++) {
			System.out.println(Thread.currentThread().getName() + "========> " + i);
		}
		//main線程結(jié)束 , 終止t1線程
		thread1.stopping = true;
		prime3.running = false;
	}

}

class SubThread1  extends Thread{
	boolean stopping = false;
	@Override
	public void run() {
		for (int i = 1; i <= 500; i++) {
			if (stopping) {
				return; 			//結(jié)束方法的執(zhí)行
			}
			System.out.println(Thread.currentThread().getName() + "--> " + i);
		}
	}
}

class Prime3 implements Runnable{
	boolean running = true;
	@Override
	public void run() {
		for( int i = 1; running && i<=500; i++){
			System.out.println(Thread.currentThread().getName() + "--> " + i);
		}
	}
}
主站蜘蛛池模板: 美女在线视频观看影院免费天天看 | 波多野结衣一区二区三区四区 | 成人在线亚洲 | 香蕉视频亚洲一级 | 欧美性xxxx偷拍 | 五月花激情网 | 亚洲国产精品综合久久2007 | 操操操天天操 | 亚洲一区二区三区播放在线 | 精品麻豆| 亚洲一区二区三区四区五区 | 香蕉碰碰人人a久久动漫精品 | 国产精品日韩欧美在线第3页 | 亚洲图片在线观看 | 国产亚洲一区呦系列 | 国产99对白在线播放 | 手机看片国产欧美日韩高清 | 天天射综合| 国产视频观看 | 中文字幕亚洲综合久久 | 欧美成人看片黄a免费 | 国产在线精品观看 | 乱色专区 | 亚州综合激情另类久久久 | 欧美在线一级视频 | 国产精品久久久久久一区二区三区 | 日本高清在线观看天码888 | 玖玖在线资源站 | 9999人体做爰大胆视频 | 国产免费不卡 | 欧美在线观看一区二区三 | 亚洲国产精品久久久天堂麻豆 | 欧美日本激情 | 在线综合+亚洲+欧美中文字幕 | 国产福利在线观看永久免费 | 国产第二区 | 五月一区二区久久综合天堂 | 精品一区二区视频 | 国产香蕉视频在线观看 | 色视频网站在线观看 | 狠狠色噜噜综合社区 |