Java 多線程技能

  1. 使用多線程
    1. extends Thread
      1. new MyThread()
    2. implements Runnable
      1. new Thread(new MyRunnable)
    3. 共享變量使用synchronized 進行加鎖
  2. api彙總
    1. currentThread()
      1. 當前的線程
    2. isAlive()
      1. 判斷線程是否存活
    3. sleep
      1. 線程休眠
    4. gitId()
      1. 獲取當前線程id
    5. interrupt()
      1. 終止線程,但不會停止線程。打一個log?
    6. interruptted()
      1. static 方法,判斷是否終止。調用後清除狀態
    7. isInterruptted()
      1. 判斷是否被終止,非statis類型方法。
    8. throw new InterruptException()
      1. 判斷是否終止並使用拋出異常來暫停程序
    9. stop()
      1. 暴力停止,數據得不到清理,數據不一致
    10. return()
      1. 判斷是否被暫停,使用return 結束,會污染代碼
    11. suspend()
      1. 線程暫停
    12. resume()
      1. 線程恢復
        線程暫停恢復可能會導致數據不一致,對象獨佔情況,被棄用
    13. yield()
      1. 釋放當前CPU資源
    14. priority()(1-10)
      1. 並不一定先執行完優先級高的再執行優先級低的
      2. 優先級高的比優先級低的執行速度塊
    15. daemon()
      1. 守護線程
發佈了24 篇原創文章 · 獲贊 2 · 訪問量 9069
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章