首頁  >  文章  >  Java  >  java啟動線程的3種方式比較分析

java啟動線程的3種方式比較分析

高洛峰
高洛峰原創
2017-01-21 16:33:411304瀏覽

本文實例為大家分享了java啟動執行緒的方法,供大家參考,具體內容如下

1.繼承Thread

public class java_thread extends Thread{
  public static void main(String args[])
  {
    (new java_thread()).run();
    System.out.println("main thread run ");
  }
  public synchronized void run()
  {
    System.out.println("sub thread run ");
  }
  
}

2.實作Runnable介面

public class java_thread implements Runnable{
  public static void main(String args[])
  {
    (new Thread(new java_thread())).start();
    System.out.println("main thread run ");
  }
  public void run()
  {
    System.out.println("sub thread run ");
  }
  
}

2.實作Runnable介面

void java_thread()
{
  
   Thread t = new Thread(new Runnable(){
      public void run(){
      mSoundPoolMap.put(index, mSoundPool.load(filePath, index));
      getThis().LoadMediaComplete();
      }});
    t.start();
}

2.實作Runnable介面
rrreee


3.


4.比較:


實現Runnable介面優勢:
1)適合多個相同的程式碼的執行緒去處理同一個資源
2)可以避免Java中的單繼承的限制

3)增加程式的健全性,程式碼可以被多個執行緒共享,程式碼和資料獨立。


繼承Thread類別優勢:

1)可以將執行緒類別抽象化出來,當需要使用抽象工廠模式設計時。

2)多執行緒同步

🎜在函數體使用優勢🎜1)無需繼承thread或實作Runnable,縮小作用域。 🎜🎜以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持PHP中文網。 🎜🎜更多java啟動線程的3種方式對比分析相關文章請關注PHP中文網! 🎜
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn