創建線程的幾種方式


說道線程,肯定會想到使用 java.lang.Thread.java這個類

那么創建線程也主要有2種方式

第一種方式:

public class MyThread extends Thread  {
    public void run() {
        System.out.println("這是MyThread線程");
    }
}

然后在調用處,執行start方法即可:

MyThread myThread = new MyThread();
myThread.start();

第二種方式實現Runnable接口:

public class MyRunnable implements Runnable {
    public void run() {
        System.out.println("這是MyThread線程"); 
  }
}

同樣在執行的地方直接生命這個MyRunnable,再直接丟進線程start即可:

MyRunnable runBary = new MyRunnable();
Thread thread = new Thread(runBary);
thread.start();

這兩種方式都可以用匿名類的方式來實現,但是我並不推薦;

另外使用Thread本身來實現線程還是用Runnable來做,我推薦后者,因為相對來說會比較方便,直接往線程中一扔即可,如果使用spring的線程執行器也是同樣的道理,往執行器中丟入這個runnable即可

需要注意的是,執行線程的時候可以使用start()方法或者run()方法,雖然使用run會達到同樣的效果,

但是run是在主線程中使用的,也就是使用你當前的方法內線程,而不是另起一個線程,這樣就達不到異步的效果,所以務必使用start()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM