1. 程式人生 > >通過實現Runnable介面建立執行緒

通過實現Runnable介面建立執行緒

  1. 實現runnable介面來建立執行緒類
  2. 建立Runnable實現類的物件
  3. 以Runnable實現類的物件作為thread的目標target來建立Thread物件
package newThread;

public class Twothread implements Runnable {
    private int i;
    @Override
    public void run() {
        //run方法同樣是執行緒執行體
        for(;i<10;i++) {
            //此時獲取執行緒名必須用Thread.currentThread().getName(),不能用this.getName()
System.out.println(Thread.currentThread().getName()+" "+i); } } public static void main(String[] args) { for(int i=0;i<5;i++) { System.out.println(Thread.currentThread().getName()+""+i); if(i==1) { Twothread th=new Twothread();//新建runnable物件
//通過new Thread(target,name)建立新執行緒 new Thread(th,"新執行緒1").start();//將runnable物件作為target例項化執行緒 new Thread(th,"新執行緒2").start(); } } } }

執行結果如圖:這裡寫圖片描述
如圖,執行緒1和執行緒2共享i變數,因為執行緒共用target物件。使用Thread例項化執行緒時,不同執行緒不能共用target的例項屬性。對比“通過thread例項化執行緒理解”