1. 程式人生 > 其它 >3.獲取當前執行任務的執行緒

3.獲取當前執行任務的執行緒

 

 

 

獲取當前執行任務的執行緒

 引言

上一節我們學習了建立執行緒的三種方式,將任務提交給執行緒執行以後,如果我們想知道是哪一個執行緒正在執行這個任務該如何做,

currentThread

本節的內容就是介紹該如何獲取當年正在執行任務的執行緒,通過thread類的currentThread此類的方法,

 

 

就可以獲取當前正在執行任務的執行緒,他返回的是一個thread物件,該方法是一個靜態方法,它可以直接通過類名來呼叫。下面我們來看看該方法如何使用。

直接通過Thread類名呼叫的currentThread方法返回一個thread的物件,該物件就是當錢正在執行任務的執行緒,接著我們輸出該程式,看看執行結果是什麼,看看這個結果,我們可以來試著來解讀一下它是什麼意思。

 

 


首先看紅色部分,他們是一個固定格式,也就是說我們輸出的格式就是這樣的。

 

 

 

接著這個紅色的main它代表執行緒的名稱,這個數字5它代表的是現成的優先順序,優先順序越高,獲取到CPU的執行權的概率也就越大,也就意味著你這個執行緒執行的次數也就越多,任務呢也就越早被執行完。後面這個main它代表的是執行緒所處的執行緒組名稱,每一個執行緒都必須加入一個執行緒組,這個main它就代表當前執行緒所處的執行緒組的叫做main,同時也說明了我們的主執行緒所處的執行緒組,它就是叫做main,那麼這個輸出的格式在哪裡?可以看呢,它可以在thread內的 tostring方法可以看到,這段程式碼展示的就是tostring原始碼。 

 

 


著重呢我們來看
return這部分。先來看綠色部分的程式碼,他們沒有特殊的含義,就是輸出的格式。再來看蓋章類目方法,該方法用於獲取執行緒的名稱,他對你剛剛的結果就是第一個main,下一個是 getpriority方法。該方法呢它就是來獲取現成的優先順序的,它證明的結構呢就是那個數字5。最後我們來看看這個Get類目方法。它就是來獲取執行緒所屬的執行緒組名稱,它對應的結果就是剛剛那個最後那個main。 


好了,列印結果就先分析到這。

總結

我們來總結一下本節的內容。本節我們主要介紹了currentThread方法,它是一個靜態方法,作用呢是返回當年正在執行的任務的執行緒,實際開發中呢我們偶爾也會用到它。 


  

附錄:

筆記完整文字:

上一節我們學習了建立執行緒的三種方式,將任務提交給縣城執行以後,如果我們想知道是哪一個縣城正在執行這個任務該如何做,本節的內容就是介紹該如何獲取當年正在執行任務的執行緒,通過Siri的類的 comment此類的方法,就可以獲取當前正在執行任務的執行緒,他返回的是一個three的物件,該方法是一個靜態方法,它可以直接通過類名來呼叫。下面我們來看看該方法如何使用。直接通過swear的類名調,用congress three的方法返回一個serve的物件,該物件就是當年正在執行任務的執行緒,接著我們輸出該sent執行程式,看看執行結果是什麼,看看這個結果,我們可以來試著來解讀一下它是什麼意思。 首先看紅色部分,他們是一個固定格式,也就是說我們輸出的格式就是這樣的。接著這個紅色的夢它代表縣城的名稱,這個數字5它代表的是現成的優先順序,優先順序越高,獲取到CPU的執行權的概率也就越大,也就意味著你這個現場執行的次數也就越多,任務呢也就越早被執行完。後面這個夢呢它代表的是執行緒所處的執行緒組名稱,每一個執行緒都必須加入一個執行緒組,這個man它就代表當前憲政所處的執行緒組的叫做悶,同時也說明了我們的主執行緒所處的線的組,它就是調動門,那麼這個輸出的格式在哪裡?可以看呢,它可以在thread內的 to string方法可以看到,這段程式碼展示的就是to,string原始碼。 著重呢我們來看return這部分。先來看綠色部分的程式碼,他們沒有特殊的含義,就是輸出的格式。再來看蓋章類目方法,該方法用於獲取執行緒的名稱,他對你剛剛的結果就是第一個夢,下一個是 get priority方法。該方法呢它就是來獲取現成的優先順序的,它證明的結構呢就是那個數字5。最後我們來看看這個Get類目方法。它就是來獲取縣城所屬的執行緒組名稱,它對應的結果就是剛剛那個最後那個夢。 好了,列印結果就先分析到這。我們來總結一下本節的內容。本節我們主要介紹了看上那個 Siri的方法,它是一個靜態方法,作用呢是返回當年正在執行的任務的執行緒,實際開發中呢我們偶爾也會用到它。