Java——獲取和設定多執行緒的名稱
給名字進行賦值有兩種方式:
- 1,通過構造去賦值 Thread(String name) 直接在構造方法裡面傳一個名字就行了
- 2,通過set設定的方法進行賦值
package com.yy.threadmethod;
public class Demo1_Name {
public static void main(String[] args) {
demo1(); //通過構造方法給name賦值
demo2(); //通過set設定的方法進行賦值
demo3(); //通過set設定的方法進行賦值
}
private static void demo3() {
//public final void setName(String name) 改變執行緒名稱,使之與引數 name 相同。
Thread t1 = new Thread(){ //父類引用指向子類物件
public void run(){
System.out.println(this.getName() + " xxxxx");
}
};
//從new到; 整個都代表Thread的子類物件,相當於給Thread的子類物件起了個名字加 t1;這裡的t1相當於demo2裡面的this
Thread t2 = new Thread(){
public void run(){
System.out.println(this.getName() + " qqqqq" );
}
};
//從new到; 整個都代表Thread的子類物件,相當於給Thread的子類物件起了個名字加 t2;這裡的t2相當於demo2裡面的this
t1.setName("yy");
t2.setName("wsq");
t1.start();
t2.start();
}
private static void demo2() {
//public final void setName(String name) 改變執行緒名稱,使之與引數 name 相同。
new Thread(){
public void run(){
this.setName("黃貫中"); //這是條語句,語句必須寫到方法裡
System.out.println(this.getName() + " xxxxx");
}
}.start();
new Thread(){
public void run(){
this.setName("葉世榮"); //這是條語句,語句必須寫到方法裡
System.out.println(this.getName() + " QQQQQQ");
}
}.start();
}
private static void demo1() { //使用匿名內部類
//public Thread(String name) 引數:name - 新執行緒的名稱。
new Thread("黃家駒"){ //通過構造方法給name賦值,設定執行緒的名稱
public void run(){
System.out.println(this.getName() + " aaaaaa"); //這裡的this就相當於匿名內部類物件,this就是誰來呼叫我,我就代表誰,相當於使用匿名內部類物件來呼叫getName();從而獲取執行緒名稱
}
}.start(); //開啟執行緒
//這是一個執行緒,執行緒名稱為:黃家駒
new Thread("黃家強"){
public void run(){
System.out.println(this.getName() + " hjj");
}
}.start();
//這也是一個執行緒,執行緒名稱為:黃家強
}
//執行緒有預設的名稱:Thread-0 後面的序號從0開始,以此類推
}
相關推薦
Java——獲取和設定多執行緒的名稱
給名字進行賦值有兩種方式: 1,通過構造去賦值 Thread(String name) 直接在構造方法裡面傳一個名字就行了 2,通過set設定的方法進行賦值 package com.y
【4】Java併發程式設計:多執行緒中的快取一致性和CAS
一、匯流排鎖定和快取一致性 基本概念 這是兩個作業系統層面的概念。隨著多核時代的到來,併發操作已經成了很正常的現象,作業系統必須要有一些機制和原語,以保證某些基本操作的原子性,比如處理器需要保證讀一個位元組或寫一個位元組是原子的,那麼它是如何實現的呢?有
Java 知識 - 集合、多執行緒、IO、JVM
GitHub 專案地址 Collection Java Collection 新增、刪除等操作時可選操作,如 Arrays.asList,會產生固定大小的集合,會丟擲 UnsupportedOperationException Set HashSet、TreeSet、LinkedH
java併發程式設計一一多執行緒之間通訊(一)
1.多執行緒之間如何實現通訊 多執行緒之間通訊,其實就是多個執行緒在操作同一個資源,但是操作的動作不同。 1.1什麼是多執行緒之間通訊? 需求:第一個執行緒寫入(input)使用者,另一個執行緒讀取(out)使用者。實現讀一個,寫一個操作。 1.2多執行緒之間通訊需求?
java併發程式設計一一多執行緒執行緒安全(四)
##1.java重排序 ###1.1資料依賴性 如果兩個操作訪問同一個變數時,且這兩個操作匯中有一個為寫操作,此時這兩個操作之間就 存在資料依賴性。資料依賴分下列三種類型。 名稱 程式碼示例 說明
java併發程式設計一一多執行緒執行緒安全(三)
1.多執行緒的三大特性 1.1什麼是原子性 即一個操作或多個操作要麼全部執行並且執行的過程不會被任何因素打斷,要麼就都不執行。 一個很經典的例子就是銀行賬戶轉賬問題: 比如從賬戶A向賬戶B轉1000元,那麼必然包括2個操作:從賬戶A減去1000元,往賬戶B加上1000元。這2
java併發程式設計一一多執行緒執行緒安全(二)
1.多執行緒死鎖 1.1什麼是多執行緒死鎖? 同步中巢狀同步,導致鎖無法釋放 程式碼示例: class Thread009 implements Runnable { private int trainCount = 100; private Object
java併發程式設計一一多執行緒執行緒安全(一)
1.什麼是執行緒安全? 1.1為什麼有執行緒安全問題? 當多個執行緒同時共享同一個全域性變臉或靜態變數,做寫的操作時,可能會發生資料衝突的問題, 也就是執行緒安全的問題。但是做讀操作是不會發生資料衝突問題。 舉例:現在有100張火車票,有兩個視窗同時搶火車票,用多執行緒模擬搶
java併發程式設計一一多執行緒基礎快速入門
1.執行緒與程序的區別 每個正在系統上執行的程式都是一個程序。每個程序包含一到多個執行緒。執行緒是一組指令的集合,或者是程式的特殊段,他可以在程式裡獨立執行。也可以把它理解為程式碼執行的上下文。 所以執行緒基本是輕量級的程序,它負責在單個程式裡執行任務。通常有作業系統負責多個執行緒
批量獲取區域網IP[多執行緒]
批量獲取區域網IP python程式碼 #coding = utf-8 import os,os.path import threading import time lock = threading.RLock() def action(ip): result = "ip.
java學習day18~19---多執行緒
一.執行緒和程序(單核) 程序:CPU中有多個程式“同時”在使用,CPU在一個時間點上只能執行一件事情,而CPU分片段執行不同程式, 但是切換速率十
Java編寫的一個多執行緒下載器
這裡只是演示這個下載器如何使用以及介面 1.可以百度TIM:找到下載介面,複製下載地址: 2.貼上到下載器介面如下圖:(注意儲存地址一定是存在的) 3.點選開始下載:(如果想要暫停或者繼續可以先選中下載行,點選暫停或者繼續)
Java高併發程式設計——多執行緒
執行緒簡介 程序 正在執行的程式。 程序是系統進行資源分配和呼叫的獨立單位。每一個程序都有他自己的記憶體空間和系統資源。 執行緒 在同一個程序內又可以執行多個任務。而這每一個任務就可以看成是一個執行緒。
Java的知識點24——多執行緒技術
多執行緒技術 三高:高可用、高效能、高併發 基本概念:多執行緒是Java語言的重要特性,大量應用於網路程式設計、伺服器端程式的開發,最常見的UI介面底層原理、作業系統底層原理都大量使用了多執行緒。 我們可以流暢的點選軟體或者遊戲中的各種按鈕,其實,底層就是多執行緒的應用。UI介面的主執行
java 使用RandomAssessFile類多執行緒切片下載檔案之伺服器如何實現
因為之前寫的都是客戶端,不需要去管服務端,直接把檔案放伺服器裡面,直接訪問,伺服器(tomcat之類得)就會自動幫我們切片,之類的。然後我自己想測試一些直接訪問檔案和使用控制器io讀寫返回檔案哪個快一些(肯定是io)https://blog.csdn.net/yali_a
Java面向物件與多執行緒綜合實驗(五)之JDBC
本次程式碼沿用第三次中的User.java Administrator.java Operator.java Browser.java和Doc.java 以及第四次中的LoginWindow.java MenuWindow.java UserWindow.java UpDownloadWin
Java面向物件與多執行緒綜合實驗(四)之GUI設計
瞭解Java圖形介面程式的基本結構;掌握Java佈局管理和常用元件的使用;掌握Java事件處理機制。 實驗內容 編寫程式,將前面課程所編寫的檔案管理系統改編為圖形使用者介面。要求程式介面選用合適的佈局,綜合使用選單、按鈕、文字框、密碼框、下拉列表、檔案對話方塊等元件,實現良好的人機介面。
Java面向物件與多執行緒綜合實驗(三)之輸入輸出流
瞭解Java中I/O流的概念和種類;掌握位元組流處理和字元流處理,包括File類,InputStream/OutputStream及其子類,Reader/Writer及其子類;熟練掌握檔案的順序處理,隨機訪問處理;熟悉物件序列化的概念和方法。 編寫程式,實現檔案管理系統中的檔案上傳/下載模組
Java面向物件與多執行緒綜合實驗(二)之 異常處理
理解異常的基本概念;瞭解Java異常的層次結構;熟悉並掌握Java異常的捕獲處理方法。 (1)閱讀Java™ Platform, Standard Edition 8 API Specification文件,瞭解後續程式設計中將要處理的IOException及其子類FileNotFoundE
Java面向物件與多執行緒綜合實驗(一)之封裝、繼承與多型
編寫一個程式,實現檔案管理系統中的使用者管理模組。要求模組中實現使用者的模擬登入過程。通過使用者輸入,獲取使用者名稱和口令;與事先記錄在程式中的使用者資訊進行對比,通過口令驗證後才能使用系統。使用者分為系統管理人員、檔案錄入人員,檔案瀏覽人員三類,相關類圖如下所示。 (1)要求在使用者類中