日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)GoFrame教程:GoFrame gtimer-基本介紹

基本介紹

?gtimer?是一個并發(fā)安全的高性能定時器,類似于Java的?Timer?。?gtimer?組件舊版本采用的是分層時間輪(?Hierarchical Timing Wheel?)設(shè)計,從GOframe v1.16版本開始,采用了優(yōu)先級隊列(?PriorityQueue?)實現(xiàn)。

創(chuàng)新互聯(lián)建站是一家集網(wǎng)站建設(shè),上街企業(yè)網(wǎng)站建設(shè),上街品牌網(wǎng)站建設(shè),網(wǎng)站定制,上街網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,上街網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。

使用場景:

任何定時任務(wù)場景,大批量定時任務(wù)/延遲任務(wù)的場景,超時控制/頻率控制的業(yè)務(wù)場景,對于定時時間準(zhǔn)確度要求不高的業(yè)務(wù)場景。

注意事項:

  • 任何的定時任務(wù)都是有誤差的,在定時間隔比較大,或者并發(fā)量大,負(fù)載較高的系統(tǒng)中尤其明顯,具體請參考:https://github.com/golang/go/issues/14410
  • 定時間隔不會考慮任務(wù)的執(zhí)行時間。例如,如果一項工作需要3分鐘才能執(zhí)行完成,并且計劃每隔5分鐘運行一次,那么每次任務(wù)之間只有2分鐘的空閑時間。
  • 需要注意的是單例模式運行的定時任務(wù),任務(wù)的執(zhí)行時間會影響該任務(wù)下一次執(zhí)行的開始時間。例如:一個每間隔1秒執(zhí)行的任務(wù),運行耗時為1秒,那么在第1秒開始運行后,下一次任務(wù)將會在第3秒開始執(zhí)行。因為中間有一次運行檢查時發(fā)現(xiàn)有當(dāng)前任務(wù)正在進(jìn)行,因此退出等待下一次執(zhí)行檢查。

使用方式:

import "github.com/gogf/gf/v2/os/gtimer"

接口文檔:

https://pkg.go.dev/github.com/gogf/gf/v2/os/gtimer

簡要說明:

  1. ?New?方法用于創(chuàng)建自定義的任務(wù)定時器對象,并可在創(chuàng)建時通過?interval?的?TimerOptions?參數(shù)指定定時器的最小?tick?時間間隔。
  2. ?Add?方法用于添加定時任務(wù),其中:
    • ?interval ?參數(shù)用于指定方法的執(zhí)行的時間間隔。
    • ?job ?參數(shù)為需要執(zhí)行的任務(wù)方法。
  3. ?AddEntry?方法添加定時任務(wù),支持更多參數(shù)的控制。
  4. ?AddSingleton?方法用于添加單例定時任務(wù),即同時只能有一個該任務(wù)正在運行。
  5. ?AddOnce?方法用于添加只運行一次的定時任務(wù),當(dāng)運行一次數(shù)后該定時任務(wù)自動銷毀。
  6. ?AddTimes?方法用于添加運行指定次數(shù)的定時任務(wù),當(dāng)運行?times?次數(shù)后該定時任務(wù)自動銷毀。
  7. ?Search?方法用于根據(jù)名稱進(jìn)行定時任務(wù)搜索(返回定時任務(wù)?*Entry?對象指針)。
  8. ?Start?方法用于啟動定時器(使用?New?創(chuàng)建定時器時會自動啟動)。
  9. ?Stop?方法用于停止定時器。
  10. ?Close?方法用于關(guān)閉定時器。

默認(rèn)定時器

大部分的場景下使用默認(rèn)的定時器即可。使用?gtimer?的默認(rèn)定時器時,默認(rèn)的間隔時間為100ms,因此理論的時間間隔誤差范圍為0~100ms。可以使用以下兩種方式修改默認(rèn)的定時器參數(shù):

  1. 使用啟動參數(shù)
    • ?gf.gtimer.interval=50?: 修改默認(rèn)的時間刻度為50毫秒
  2. 使用環(huán)境變量
    • ?GF_GTIMER_INTERVAL=50?

網(wǎng)頁標(biāo)題:創(chuàng)新互聯(lián)GoFrame教程:GoFrame gtimer-基本介紹
網(wǎng)站鏈接:http://www.dlmjj.cn/article/dpdhddh.html