線程的方法

Thread.currentThread()
獲得正在執(zhí)行的線程對(duì)象
Thread.sleep(毫秒)
讓正在執(zhí)行的線程,在此處暫停指定的毫秒時(shí)間 1000=1s
getName()

Thread t = Thread.currentThread();
String n = t.getName();
特殊寫(xiě)法

run()方法不能加異常拋出管道,父類(lèi)沒(méi)有

一秒打印一次時(shí)間例子

import java.text.SimpleDateFormat;
import java.util.Date;

public class XianChengSleep {
    public static void main(String[] args) {
        //新建匿名類(lèi)繼承Thread,調(diào)用父類(lèi)構(gòu)造方法
        Thread t=new Thread(){
            @Override
            public void run() {
                SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
                for(int i=1;i<=5;i++)
                {
                    String s = sdf.format(new Date());
                    System.out.println(s);
                    try {
                        //這個(gè)值不一定精確,因?yàn)橐却龝r(shí)間片
                        Thread.sleep(1000);
                    } catch (InterruptedException e) {
                        //InterruptedException這個(gè)異常一般不會(huì)出現(xiàn)
                        e.printStackTrace();
                    }
                }
            }
        };
        t.start();
    }
}

運(yùn)行結(jié)果

19:11:19
19:11:20
19:11:21
19:11:22
19:11:23

interrupt()
打斷一個(gè)線程的暫停狀態(tài),被打斷的線程會(huì)出現(xiàn)InterruptedException


interrupt
package day1404線程;

import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Scanner;

public class XianChengInterrupt {
    public static void main(String[] args) {
        //新建匿名類(lèi)繼承Thread,調(diào)用父類(lèi)構(gòu)造方法
        Thread t=new Thread(){
            @Override
            public void run() {
                SimpleDateFormat sdf = new SimpleDateFormat("HH:mm:ss");
                for(int i=1;i<=5;i++)
                {
                    String s = sdf.format(new Date());
                    System.out.println(s);
                    try {
                        //這個(gè)值不一定精確,因?yàn)橐却龝r(shí)間片
                        Thread.sleep(1000);
                    } catch (InterruptedException e) {
                        System.out.println("誰(shuí)捅醒了我!");
                        break;
                    }
                }
            }
        };
        t.start();
        System.out.println("按回車(chē)");
        Scanner sc = new Scanner(System.in);
        sc.nextLine();
        sc.close();
        t.interrupt();
    }

}

運(yùn)行結(jié)果

按回車(chē)
19:21:45
19:21:46
19:21:47

誰(shuí)捅醒了我!

join()
當(dāng)前線程,等待被調(diào)用的線程執(zhí)行結(jié)束


a線程b線程并行執(zhí)行

b線程想使用a線程在紅點(diǎn)處的運(yùn)算結(jié)果

a.join()
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Java多線程學(xué)習(xí) [-] 一擴(kuò)展javalangThread類(lèi) 二實(shí)現(xiàn)javalangRunnable接口 三T...
    影馳閱讀 3,115評(píng)論 1 18
  • 本文主要講了java中多線程的使用方法、線程同步、線程數(shù)據(jù)傳遞、線程狀態(tài)及相應(yīng)的一些線程函數(shù)用法、概述等。 首先講...
    李欣陽(yáng)閱讀 2,602評(píng)論 1 15
  • 進(jìn)程和線程 進(jìn)程 所有運(yùn)行中的任務(wù)通常對(duì)應(yīng)一個(gè)進(jìn)程,當(dāng)一個(gè)程序進(jìn)入內(nèi)存運(yùn)行時(shí),即變成一個(gè)進(jìn)程.進(jìn)程是處于運(yùn)行過(guò)程中...
    小徐andorid閱讀 2,994評(píng)論 3 53
  • 一、線程的生命周期 線程狀態(tài)轉(zhuǎn)換圖: 1、新建狀態(tài) 用new關(guān)鍵字和Thread類(lèi)或其子類(lèi)建立一個(gè)線程對(duì)象后,該線...
    我是嘻哈大哥閱讀 1,030評(píng)論 0 8
  • 童真的女孩,稚嫩的口吻。 這是我讀六年級(jí)時(shí),一時(shí)興起寫(xiě)的小短文 現(xiàn)如今,我卻沒(méi)有了這樣的自信。 拍拍胸脯告訴世界:...
    唯肉不可閱讀 416評(píng)論 2 4

友情鏈接更多精彩內(nèi)容