Junior — Middle
Milyen paraméterek állíthatók be a feladatütemező működéséhez?
sobes.tech MI
Válasz az MI-től
Go-ban a feladatok ütemezéséhez gyakran használnak olyan csomagokat, mint például a time (pl. time.Ticker, time.Timer) vagy külső könyvtárakat (pl. robfig/cron). A feladatütemező fő konfigurálható paraméterei a következők:
- Végrehajtási intervallum — milyen gyakran induljon a feladat (pl. másodpercenként, percenként).
- Indítási idő — konkrét idő vagy ütemezés (pl. cron kifejezések).
- Párhuzamos indítások száma — a párhuzamos végrehajtások korlátozása.
- Hiba kezelése — mit tegyen, ha a feladat hibával végződik (újrapróbálás, naplózás).
- Megszakítási kontextus — lehetőség a feladat leállítására
context.Contextsegítségével.
Példa a time.Ticker használatával:
ticker := time.NewTicker(1 * time.Minute)
quit := make(chan struct{})
func() {
for {
select {
case <- ticker.C:
// feladatkód
case <- quit:
ticker.Stop()
return
}
}
}()