java DelayQueue的原理淺析
在對DelayQueue延遲功能的使用上,很多人不能后完全理解延遲的一些功能使用,這里我們深入來挖掘一下DelayQueue的原理。
下面將從構(gòu)造方法、接口、繼承體系三個方面進(jìn)行分析,需要注意的是,相較于其它的阻塞隊(duì)列,DelayQueue因?yàn)檠舆t的功能多了接口的使用,一起來看具體內(nèi)容。
1.構(gòu)造方法public DelayQueue() {}public DelayQueue(Collection<? extends E> c) { this.addAll(c);}
構(gòu)造方法比較簡單,一個默認(rèn)構(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 接口,因此必須實(shí)現(xiàn)compareTo(),使其可以進(jìn)行元素的比較。
3.繼承體系public class DelayQueue<E extends Delayed>extends AbstractQueue<E>implements BlockingQueue<E>
到此這篇關(guān)于java DelayQueue的原理淺析的文章就介紹到這了,更多相關(guān)java DelayQueue的原理內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. PHP字符串前后字符或空格刪除方法介紹2. html小技巧之td,div標(biāo)簽里內(nèi)容不換行3. 將properties文件的配置設(shè)置為整個Web應(yīng)用的全局變量實(shí)現(xiàn)方法4. nestjs實(shí)現(xiàn)圖形校驗(yàn)和單點(diǎn)登錄的示例代碼5. python開發(fā)飛機(jī)大戰(zhàn)游戲6. laravel ajax curd 搜索登錄判斷功能的實(shí)現(xiàn)7. 以PHP代碼為實(shí)例詳解RabbitMQ消息隊(duì)列中間件的6種模式8. css進(jìn)階學(xué)習(xí) 選擇符9. Echarts通過dataset數(shù)據(jù)集實(shí)現(xiàn)創(chuàng)建單軸散點(diǎn)圖10. python實(shí)現(xiàn)自動化辦公郵件合并功能
