日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

多线程(二)线程控制

發布時間:2025/4/14 编程问答 16 豆豆
生活随笔 收集整理的這篇文章主要介紹了 多线程(二)线程控制 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

一.線程的操作

  構造方法:Thread(Runnable target)  創建新的線程對象

       ? Thread(Runnable target,String name)  創建新的線程對象,并指定名字

  成員方法: ?static Thread currentThread()  返回當前線程對象

       ? long getId()  返回當前線程ID

       String getName()  返回當前線程名稱

       void setName()  設置當前線程名稱

       boolean isAlive()  判斷當前線程是否處于活動狀態

?

  重要方法:

     1.sleep 線程休眠

      如果需要讓當前正在執行的線程暫停一段時間,并進入阻塞狀態,可以調用Thread類的靜態方法sleep()來實現,sleep()有2種重載形式

      static void sleep(long millis)  讓當前線程暫停指定的毫秒數,在繼續執行,比較常用

      static void sleep(long millis,int nanos)  讓當前線程暫停指定毫秒數加納秒數,在繼續執行

      * 讓當前線程進入休眠狀態,讓出當次執行的CPU時間,當時該線程不丟失任何監視器的所屬權

     2.join 等待線程終止

      join()方法的作用是讓一個線程等待另一個線程執行完成,它有3種重載形式

      join()  等待該線程終止

      join(long millis)  等待該線程終止的時間最長為指定毫秒數

      join(long millis,int nanos)  等待該線程終止的時間最長為指定毫秒數加納秒數,不常用

     3.interrupt() 線程中斷

      interrupt()方法只是給線程做了一個中斷標記,并沒有真正地中斷線程,遇到sleep(),join(),wait()方法標記會被清掉,并拋出InterruptException異常,線程會繼續執行

      interrupt()  中斷該線程

      Thread.interrupted()  判斷當前線程是否被終止

      * 但通常會使用自定義標記來中斷線程,滿足條件后自己終止

    4.改變線程優先級

      每個線程執行都有一定的優先級,優先級高的線程獲得較多的執行機會,優先級低的獲得較少的執行機會。

      setPriority(int n) ?設置優先級,n的范圍為1-10之間,一般使用Thread類的3個靜態常量,提高可移植性:

              MAX_PRIORITY:值為10

              MIN_PRIORITY:值為1

              NORM_PRIORITY:值為5

      getPriority() ?獲得線程優先級

    5.守護線程

      守護線程是在后臺運行的,是為其他線程提供服務的,當所有用戶線程都死亡,守護線程會自動死亡,當虛擬機只剩下守護線程時,虛擬機會自動退出,JVM的垃圾回收線程就是典型的守護線程。

      setDaemon(boolean on)  將線程標記為守護線程或用戶線程

      isDaemon()  判斷線程是否為守護線程

    3. yield() 線程讓步 

      Thread類的靜態方法,和sleep()方法有點相似,只是它讓當前線程暫停,但不會阻塞該線程,只是讓該線程轉入就緒狀態,繼續搶時間執行。暫停之后,只有優先級與該線程相同或優先級比該線程更高的處于就緒狀態的線程才會獲得執行的機會。 

?

轉載于:https://www.cnblogs.com/gdpdroid/p/4125483.html

總結

以上是生活随笔為你收集整理的多线程(二)线程控制的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。