java DelayQueue的原理淺析
在對DelayQueue延遲功能的使用上,很多人不能后完全理解延遲的一些功能使用,這里我們深入來挖掘一下DelayQueue的原理。
下面將從構(gòu)造方法、接口、繼承體系三個方面進行分析,需要注意的是,相較于其它的阻塞隊列,DelayQueue因為延遲的功能多了接口的使用,一起來看具體內(nèi)容。
1.構(gòu)造方法
public DelayQueue() {} public DelayQueue(Collection<? extends E> c) { this.addAll(c); }
構(gòu)造方法比較簡單,一個默認構(gòu)造方法,一個初始化添加集合c中所有元素的構(gòu)造方法。
2.接口分析
public interface Delayed extends Comparable<Delayed> { /** * Returns the remaining delay associated with this object, in the * given time unit. * * @param unit the time unit * @return the remaining delay; zero or negative values indicate * that the delay has already elapsed */ long getDelay(TimeUnit unit); }
Delayed 接口有一個getDelay方法接口,該方法用來告知延遲到期有多長的時間,或者延遲在多長時間之前已經(jīng)到期,是不是很簡單。
為了排序Delayed 接口還繼承了Comparable 接口,因此必須實現(xiàn)compareTo(),使其可以進行元素的比較。
3.繼承體系
public class DelayQueue<E extends Delayed>extends AbstractQueue<E>implements BlockingQueue<E>
到此這篇關(guān)于java DelayQueue的原理淺析的文章就介紹到這了,更多相關(guān)java DelayQueue的原理內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
解決Spring session(redis存儲方式)監(jiān)聽導致創(chuàng)建大量redisMessageListenerConta
這篇文章主要介紹了解決Spring session(redis存儲方式)監(jiān)聽導致創(chuàng)建大量redisMessageListenerContailner-X線程問題,需要的朋友可以參考下2018-08-08如何利用Spring?Boot?監(jiān)控?SQL?運行情況
這篇文章主要介紹了如何利用Spring?Boot監(jiān)控SQL運行情況,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-07-07Spring boot實現(xiàn)一個簡單的ioc(2)
這篇文章主要為大家詳細介紹了Spring boot實現(xiàn)一個簡單ioc的第二篇,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04springboot程序啟動慢-未配置hostname的解決
這篇文章主要介紹了springboot程序啟動慢-未配置hostname的解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2021-08-08Spring Boot 集成 Mybatis Plus 自動填充字段的實例詳解
這篇文章主要介紹了Spring Boot 集成 Mybatis Plus 自動填充字段,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2021-03-03Java實現(xiàn)PDF轉(zhuǎn)HTML/Word/Excel/PPT/PNG的示例代碼
這篇文章主要為大家介紹了如何利用Java語言是PDF轉(zhuǎn)HTML、Word、Excel、PPT和PNG功能,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下2022-05-05