夯實Java基礎,一篇文章全解析線程問題( 二 )


  • TIMED_WAITING(超時等待)
    處于RUNNABLE狀態的線程調用wait(long)方法之后,就處于等待狀態,需要其他線程顯示地喚醒 。
  • BLOCKED(阻塞)
    等待進入synchronized方法/代碼塊,處于阻塞狀態 。
  • TERMINATED(終止)
    表示線程已經執行結束 。

  • 夯實Java基礎,一篇文章全解析線程問題

    文章插圖
    4. 線程常用方法說一下線程有哪些常用的方法 。
    方法定義含義使用方式public synchronized void start() {……}啟動線程MyThread myThread = new MyThread(); myThread.start();public static native Thread currentThread();獲取當前線程實例對象Thread thread = Thread.currentThread();public static native void yield();讓出CPU時間片Thread.yield();public static native void sleep(long millis);睡眠指定時間Thread.sleep(1L);public void interrupt() {……}中斷線程MyThread myThread = new MyThread();myThread.interrupt();public static boolean interrupted() {……}判斷線程是否已中斷MyThread myThread = new MyThread(); boolean interrupted = myThread.isInterrupted();public final native boolean isAlive();判斷線程是否是存活狀態MyThread myThread = new MyThread(); boolean alive = myThread.isAlive();public final String getName() {……}獲取線程名稱MyThread myThread = new MyThread(); String name = myThread.getName();public State getState() {……}獲取線程狀態MyThread myThread = new MyThread(); Thread.State state = myThread.getState();public long getId() {……}獲取線程IDMyThread myThread = new MyThread(); long id = myThread.getId();public final void join() {……}等待其他線程執行完再執行MyThread myThread = new MyThread();myThread.join();
    我是「一燈架構」,如果本文對你有幫助,歡迎各位小伙伴點贊、評論和關注,感謝各位老鐵,我們下期見

    夯實Java基礎,一篇文章全解析線程問題

    文章插圖

    推薦閱讀