久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

Java獲取線程ID的實例

瀏覽:122日期:2022-08-23 08:39:25

以下實例演示了如何使用 getThreadId() 方法獲取線程id:

public class Main extends Object implements Runnable { private ThreadID var; public Main(ThreadID v) { this.var = v; } public void run() { try { print('var getThreadID =' + var.getThreadID()); Thread.sleep(2000); print('var getThreadID =' + var.getThreadID()); } catch (InterruptedException x) { } } private static void print(String msg) { String name = Thread.currentThread().getName(); System.out.println(name + ': ' + msg); } public static void main(String[] args) { ThreadID tid = new ThreadID(); Main shared = new Main(tid); try { Thread threadA = new Thread(shared, 'threadA'); threadA.start(); Thread.sleep(500); Thread threadB = new Thread(shared, 'threadB'); threadB.start(); Thread.sleep(500); Thread threadC = new Thread(shared, 'threadC'); threadC.start(); } catch (InterruptedException x) { } }} class ThreadID extends ThreadLocal { private int nextID; public ThreadID() { nextID = 10001; } private synchronized Integer getNewID() { Integer id = new Integer(nextID); nextID++; return id; } protected Object initialValue() { print('in initialValue()'); return getNewID(); } public int getThreadID() { Integer id = (Integer) get(); return id.intValue(); } private static void print(String msg) { String name = Thread.currentThread().getName(); System.out.println(name + ': ' + msg); }}

以上代碼運行輸出結果為:

threadA: in initialValue()threadA: var getThreadID =10001threadB: in initialValue()threadB: var getThreadID =10002threadC: in initialValue()threadC: var getThreadID =10003threadA: var getThreadID =10001threadB: var getThreadID =10002threadC: var getThreadID =10003

以上就是Java獲取線程ID的實例的詳細內容,更多關于Java獲取線程ID的資料請關注好吧啦網其它相關文章!

標簽: Java
相關文章:
主站蜘蛛池模板: 高雄市| 卫辉市| 定安县| 剑阁县| 普陀区| 中方县| 宿州市| 新巴尔虎右旗| 昭通市| 婺源县| 衢州市| 韩城市| 庆云县| 微博| 焦作市| 水富县| 两当县| 青浦区| 金寨县| 普定县| 新源县| 酉阳| 芦溪县| 衡阳县| 惠东县| 平顶山市| 循化| 扬州市| 静安区| 全椒县| 浮山县| 阿图什市| 涿鹿县| 乌兰县| 中宁县| 宁都县| 邮箱| 柘荣县| 青龙| 赤壁市| 大名县|