package day02;java
//實現手動分配測試
public class H {
private Thread t1;
private Thread t2;
private Thread t3;線程
// 構造方法 初始化線程
public H() {
t1 = new Thread(new RunnableA());
t2 = new Thread(new RunnableB());
t3 = new Thread(new RunnableC());
}get
// 執行方法
public void test() {
t1.start();
t2.start();
t3.start();
}class
// 測試方法
public static void main(String[] args) {
H m = new H();
m.test();
}test
// 任務a
private class RunnableA implements Runnable {
public void run() {
System.out.println("A開始");
runA();
runB();
runC();
runD();
System.out.println("A結束");
}
}import
// 任務b
private class RunnableB implements Runnable {
public void run() {
System.out.println("B開始");
runE();
runF();
runG();
runH();
runI();
runJ();
runK();
System.out.println("B結束");
}
}List
// 任務c
private class RunnableC implements Runnable {
public void run() {
System.out.println("C開始");
runL();
System.out.println("C結束");
}
}線程池
// 如下爲12個任務內容
public void runA() {
System.out.println("xiancheng " + Thread.currentThread().getName() + "在工做");
System.out.println("A");
}方法
public void runB() {
System.out.println("xiancheng " + Thread.currentThread().getName() + "在工做");
System.out.println("B");
}
public void runC() {
System.out.println("xiancheng " + Thread.currentThread().getName() + "在工做");
System.out.println("C");
}
public void runD() {
System.out.println("xiancheng " + Thread.currentThread().getName() + "在工做");
System.out.println("D");
}
public void runE() {
System.out.println("xiancheng " + Thread.currentThread().getName() + "在工做");
System.out.println("E");
}
public void runF() {
System.out.println("xiancheng " + Thread.currentThread().getName() + "在工做");
System.out.println("F");
}
public void runG() {
System.out.println("xiancheng " + Thread.currentThread().getName() + "在工做");
System.out.println("G");
}
public void runH() {
System.out.println("xiancheng " + Thread.currentThread().getName() + "在工做");
System.out.println("H");
}
public void runI() {
System.out.println("xiancheng " + Thread.currentThread().getName() + "在工做");
System.out.println("I");
}
public void runJ() {
System.out.println("xiancheng " + Thread.currentThread().getName() + "在工做");
System.out.println("J");
}
public void runK() {
System.out.println("xiancheng " + Thread.currentThread().getName() + "在工做");
System.out.println("K");
}
public void runL() {
System.out.println("xiancheng " + Thread.currentThread().getName() + "在工做");
System.out.println("L");
}
}
如下使用線程池
import java.util.ArrayList;
import java.util.List;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class ThreadDemo { private ExecutorService pool = Executors.newFixedThreadPool(3); List<Runnable> list; public ThreadDemo(){ list = new ArrayList<Runnable>(); list.add(new RunnableA()); list.add(new RunnableB()); list.add(new RunnableC()); list.add(new RunnableD()); list.add(new RunnableE()); list.add(new RunnableF()); list.add(new RunnableG()); list.add(new RunnableH()); list.add(new RunnableI()); list.add(new RunnableJ()); list.add(new RunnableK()); list.add(new RunnableL()); } public void test(){ for(Runnable r : list){ pool.execute(r); } pool.shutdown(); } public static void main (String [] args){ ThreadDemo td = new ThreadDemo(); td.test(); } class RunnableA implements Runnable{ public void run(){ System.out.println("xiancheng "+Thread.currentThread().getName()+"在工做"); System.out.println("A"); } } class RunnableB implements Runnable{ public void run(){ System.out.println("xiancheng "+Thread.currentThread().getName()+"在工做"); System.out.println("B"); } } class RunnableC implements Runnable{ public void run(){ System.out.println("xiancheng "+Thread.currentThread().getName()+"在工做"); System.out.println("C"); } }class RunnableD implements Runnable{ public void run(){ System.out.println("xiancheng "+Thread.currentThread().getName()+"在工做"); System.out.println("D"); } } class RunnableE implements Runnable{ public void run(){ System.out.println("xiancheng "+Thread.currentThread().getName()+"在工做"); System.out.println("E"); } } class RunnableF implements Runnable{ public void run(){ System.out.println("xiancheng "+Thread.currentThread().getName()+"在工做"); System.out.println("F"); } } class RunnableG implements Runnable{ public void run(){ System.out.println("xiancheng "+Thread.currentThread().getName()+"在工做"); System.out.println("G"); } } class RunnableH implements Runnable{ public void run(){ System.out.println("xiancheng "+Thread.currentThread().getName()+"在工做"); System.out.println("H"); } } class RunnableI implements Runnable{ public void run(){ System.out.println("xiancheng "+Thread.currentThread().getName()+"在工做"); System.out.println("I"); } } class RunnableJ implements Runnable{ public void run(){ System.out.println("xiancheng "+Thread.currentThread().getName()+"在工做"); System.out.println("J"); } } class RunnableK implements Runnable{ public void run(){ System.out.println("xiancheng "+Thread.currentThread().getName()+"在工做"); System.out.println("K"); } } class RunnableL implements Runnable{ public void run(){ System.out.println("xiancheng "+Thread.currentThread().getName()+"在工做"); System.out.println("L"); } } }