Java之Thread類的常用方法之獲取線程名稱

2020-12-06 彼岸end

各位小夥伴們大家好,這次小編要講的是Thread類的一個常用方法,獲取線程名稱。在之前的文章中,小編介紹了Java之多線程原理的內存圖解

獲取當前線程的名稱有兩種方法1.使用Thread類中的方法getName(),String getName()返回該線程的名稱。2.可以獲取當前正在執行的線程,使用線程中的方法getName()獲取線程的名稱。static Thread current Thread()返回對當前正在執行的線程對象的引用。

代碼如下,我們先來定義一個多線程Java之創建多線程的第一種方式,thread類

public class MyThread extends Thread{

//重寫Thread中的run方法,設置線程任務

public void run() {

//獲取線程名稱的第一種方法

String name=getName();

System.out.println(name);

}

}

//獲取線程名稱的第二種方法

public class MyThread extends Thread{

//重寫Thread中的run方法,設置線程任務

public void run() {

//獲取線程名稱的第二種方法

Thread t=Thread.currentThread();

System.out.println(t);

}

}

//獲取線程名稱的第三種方法

public class MyThread extends Thread{

//重寫Thread中的run方法,設置線程任務

public void run() {

//鏈式編程

System.out.println(Thread.currentThread().getName());

}

}

main方法調用

public class Demo01GetThreadName {

public static void main(String[] args) {

//創建Thread類的子類對象

MyThread mt=new MyThread();

//調用start方法,開啟新線程,執行run方法

mt.start();

new MyThread().start();

new MyThread().start();

new MyThread().start();

//獲取主線程的名稱

System.out.println(Thread.currentThread().getName());

}

}

線程名稱,主線程,main。新線程,Thread-0,Thread-1,Thread-2。關於Java當中,Thread類的常用方法,獲取線程名稱,小編就先說到這裡,希望這篇文章可以幫到大家,也歡迎各位小夥伴補充和糾錯

相關焦點

  • Thread類的常用方法之設置線程名稱
    Java之Thread類的常用方法之獲取線程名稱,這次小編要介紹的是在Thread類的常用方法中,設置線程名稱。如何設置線程名稱呢?有兩種方法。使用Thread類中的方法setName(名字)。void setName(String name)改變線程名稱,使之與參數name相同。
  • java線程休眠之sleep
    sleep方法是Thread類中的一個靜態方法,當一個執行中的線程調用了Thread的sleep方法之後,調用線程會暫時讓出指定時間的執行權,這期間不參與CPU的調度,但是該線程所擁有的監視器資源,比如鎖還是持有且不讓出的。
  • Java之創建多線程的第一種方式,thread類
    在java.long包下,有這樣一個類java.long.Thread類代表線程,所有的線程對象必須是Thread類或其子類的實例。每一個線程的作用是完成一定的任務,就是執行一段程序流即一段順序執行的代碼。Java中使用線程執行體來代表這段程序流。
  • Java - ThreadLocal類
    java.lang.ThreadLocal類提供線程本地變量,如果創建ThreadLocal變量,那麼訪問這個變量的每個線程都會有這個變量的一個副本,多線程操作的時候,操作的是線程自己內存中的變量,從而規避了線程安全問題。它實際上是增加空間來減少多個線程之間的因為同步導致的等待時間。
  • 全鏈路跟蹤之線程上下文Thread Local實戰(完整源碼)
    ThreadLocal就是一個工具殼,它通過set方法把value值放入調用線程的threadLocals裡面存放起來,當調用線程調用它的get方法時候再從當前線程的threadLocals變量裡面拿出來使用。
  • Java之Thread類的常用方法sleep
    各位小夥伴們大家好,這次小編又來介紹Thread類的一個常用方法sleep,翻譯一下了就是睡覺的意思。具體是這樣的:public static void sleep(long millis)使用當前在執行的線程以指定的毫秒數暫停,也就是暫時停止執行。
  • Java多線程 未完成初始化--構造方法中新建線程
    對象未完成初始化就把對象提供給外界--構造方法中新建線程如下的代碼 ,演示了 構造方法中新建線程 . 例如給map賦值.之後在main方法調用中, 嘗試獲取map中,對應key的值package com.thread.background;import java.util.HashMap;import java.util.Map;/** * 類名稱:ConstructNewThread * 類描述: 
  • java安全編碼指南之:Thread API調用規則
    ThreadGroup是java 1.0引入的方法,主要是一次性的對一組thread進行操作。我們可以調用ThreadGroup.interrupt()來一次性的對整個Group的Thread進行interrupts操作。
  • 圖文並茂|創建線程和線程的常用方法(一次性講清線程基礎知識)
    CPU在來回改變線程的執行機會稱之為線程上下文切換。等待CPU進行調度運行(running)狀態: 執行run()方法阻塞(blocked)狀態: 暫時停止執行線程,將線程掛起(sleep()、wait()、join()、沒有獲取到鎖都會使線程阻塞), 可能將資源交給其它線程使用死亡(terminated)狀態: 線程銷毀(正常執行完畢、發生異常或者被打斷interrupt()都會導致線程終止)五:Thread常用方法Thread
  • Java之System類的常用方法
    各位小夥伴們大家好,在之前的文章中,小編有介紹過Java之Calendar類的常用成員方法這次小編要介紹的是System類的常用方法。java.long.System類中提供了大量的靜態方法,可以獲取與系統相關的信息或系統級操作,在System類的API文檔中。
  • Java+Linux,深入內核源碼講解多線程之進程
    2、內核裡,並不嚴格區分進程和線程。3、從內核的角度看,調度單位是線程 (即執行流)。可以把線程看做是進程裡的一條執行流,1個進程裡可以有1個或者多個線程。4、內核裡,常把進程稱為 task 或者 thread,這樣描述更準確,因為許多進程就只有1條執行流。5、內核通過輕量級進程 (lightweight process) 來支持多線程。
  • java必備技能之多線程與線程池
    場景描述以前多線程也常用,這次因需再頁面上用到多線程,如下圖,總結下,有需要的朋友可以參考下。,當有任務進來的時候,如果當前線程數還未達到 corePoolSize 個數,則創建核心線程,核心線程有幾個特點:1、當線程數未達到核心線程最大值的時候,新任務進來,即使有空閒線程,也不會復用,仍然新建核心線程;2、核心線程一般不會被銷毀,即使是空閒的狀態,但是如果通過方法 allowCoreThreadTimeOut(boolean
  • Java並發編程實踐系列:如何編寫線程安全的類
    目前有幾種常用的線程安全類的實現方式,悉數如下:設計不變的類,如枚舉類;利用同步鎖來保證線程操作的安全性,參考示例如何實現線程安全的單例類;使用 一個簡單的不變類編寫如下:import java.util.Date;/** * 不可變對象定義,不提供set方法,避免外界對該對象屬性進行修改 * 對象中用到的引用類型,使用拷貝而非直接引用 * 引用對象的get方法,也是提供拷貝 */public class ImmutableModel { private String name; private int age;
  • JNI-Thread中start方法調用與run方法回調分析
    前言在java編程中,線程Thread是我們經常使用的類。那麼創建一個Thread的本質究竟是什麼,本文就此問題作一個探索。方法,創建了一個系統線程,因此java線程和系統線程是一個一對一的關係3.系統線程的使用接著我們來簡單使用一下這個創建線程的方法。
  • 深度剖析——Java多線程
    繼承Tread類Runnable接口 實現Runnable接口Callable接口 實現Callable接口Thread類:自定義線程繼承thread類重寫run()方法,編寫線程執行體創建線程對象,調用start()方法啟動線程`package Thread;/** * 繼承thread類 *///創建線程方式 :繼承Thread類,重寫run()方法。
  • 萬字圖解Java多線程,不信你學不會
    通過Thread類直接創建線程利用線程池內部創建線程啟動線程的方式調用線程的start()方法// 啟動繼承Thread類的任務new T().start();// 啟動繼承Thread匿名內部類的任務 可用
  • 萬字圖解Java多線程
    但是打斷後,線程的打斷標記還是false打斷正常線程 ,線程不會真正被中斷,但是線程的打斷標記為trueinterrupted() 獲取線程的打斷標記,調用後清空打斷標記 即如果獲取為true 調用後打斷標記為false (不常用)interrupt實例: 有個後臺監控線程不停的監控,當外界打斷它時,就結束運行。
  • 我是一條不安分的毛線,Java Thread類簡述
    3、Thread類中的方法java.lang.Thread類的源碼:下面是Thread類中常用的關係到線程運行狀態的方法:1)start方法start()用來啟動一個線程,當調用start方法後,系統才會開啟一個新的線程來執行用戶定義的子任務,在這個過程中,會為相應的線程分配需要的資源
  • java的線程創建方式
    Thread類java語言中的Thread類是一個基本的線程類,用於創建線程、中斷線程、獲取線程的基本信息、運行狀態等。我們首先了解下利用Thread類創建線程實例的二種方式。繼承Thread類創建線程//繼承Thread實現自己的線程類class MyThread extends Thread{//重寫run方法,給線程賦予工作任務 @Override public void run() { //任務內容…… System.out.println("當前線程是:"+Thread.currentThread
  • 10 張圖聊聊線程的生命周期和常用 APIs
    今天我們來說一下線程的生命周期和常用 APIs:我們需要非常清楚的知道線程的各種狀態,比如排查程序運行慢的原因時,就需要看下是不是哪裡被阻塞了;另外它也是面試時非常喜歡問的,如果基礎內容都答不好,恐怕直接就掛了。