淺談Timer和TimerTask與線程的關(guān)系
1. Timer是一個定時器,它可以根據(jù)指定的時間,指定的執(zhí)行周期來執(zhí)行固定的任務(wù)TimerTask,例子如下:
Timer與線程的關(guān)系,在Timer源代碼中可現(xiàn)如下代碼:
1. 以下為Timer的默認(rèn)構(gòu)造方法,起調(diào)用了自身的一個有參構(gòu)造函數(shù):
2.有參構(gòu)造函數(shù)代碼如下:
3. 有參構(gòu)造函數(shù)設(shè)置了當(dāng)前線程的名字并啟動該線程,線程代碼如下:
4. TimerThread類的源代碼如下:
由以上代碼可以看出Timer其實就是一個Thread類的子類。
TimerTask與線程的關(guān)系:
1. 以下為TimerTask的構(gòu)造函數(shù)的源碼:
2. 以下為TimerTask類的定義:
又以上代碼可以看出,TimerTask是一個實現(xiàn)了Runnable接口的線程,此類中有一個抽象的run方法,如下:
所以我們必須在TimerTask的子類中實現(xiàn)這個run方法。
總結(jié):
以上Timer和TimerTask的關(guān)系類似如下線程關(guān)系:
以上這篇淺談Timer和TimerTask與線程的關(guān)系就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Spring Boot和Thymeleaf整合結(jié)合JPA實現(xiàn)分頁效果(實例代碼)
這篇文章主要介紹了Spring Boot和Thymeleaf整合結(jié)合JPA實現(xiàn)分頁效果,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-02-02Spring中@PropertySource的使用方法和運行原理詳解
這篇文章主要介紹了Spring中@PropertySource的使用方法和運行原理詳解,PropertySource注解可以方便和靈活的向Spring的環(huán)境容器(org.springframework.core.env.Environment?Environment)中注入一些屬性,這些屬性可以在Bean中使用,需要的朋友可以參考下2023-11-11JDK20?+?SpringBoot?3.1.0?+?JdbcTemplate?使用案例詳解
通過 JdbcTemplate 直接執(zhí)行 SQL 語句,結(jié)合源碼動態(tài)編譯即可方便實現(xiàn)動態(tài)修改代碼邏輯的效果,這篇文章主要介紹了JDK20?+?SpringBoot?3.1.0?+?JdbcTemplate?使用,需要的朋友可以參考下2023-09-09java構(gòu)造器 默認(rèn)構(gòu)造方法及參數(shù)化構(gòu)造方法
構(gòu)造器也叫構(gòu)造方法、構(gòu)造函數(shù),是一種特殊類型的方法,負(fù)責(zé)類中成員變量(域)的初始化。構(gòu)造器的用處是在創(chuàng)建對象時執(zhí)行初始化,當(dāng)創(chuàng)建一個對象時,系統(tǒng)會為這個對象的實例進(jìn)行默認(rèn)的初始化,下面文章將進(jìn)入講解,需要的朋友可以參考下2021-10-10Spring?Boot?ORM?框架JPA使用與連接池?Hikari詳解
這篇文章主要介紹了SpringBoot?ORM框架JPA與連接池Hikari,主要就是介紹JPA?的使用姿勢,本文結(jié)合實例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-08-08