Sobes.tech
Junior — Middle

Aké parametre je možné nastaviť pre chod plánovača úloh?

sobes.tech AI

Odpoveď od AI

V Go sa pri plánovaní úloh často používajú balíky ako time (napríklad time.Ticker, time.Timer) alebo externé knižnice (napríklad robfig/cron). Hlavné parametre, ktoré je možné nakonfigurovať pre plánovač úloh, zahŕňajú:

  • Interval vykonávania — ako často má byť úloha spustená (napríklad každú sekundu, minútu).
  • Čas spustenia — konkrétny čas alebo rozvrh (napríklad cron výrazy).
  • Počet paralelných spustení — obmedzenie počtu súčasných vykonaní.
  • Spracovanie chýb — čo robiť v prípade zlyhania úlohy (opakovať, logovať).
  • Kontext zrušenia — možnosť zastaviť úlohu pomocou context.Context.

Príklad s použitím time.Ticker:

ticker := time.NewTicker(1 * time.Minute)
quit := make(chan struct{})
func() {
    for {
        select {
        case <- ticker.C:
            // kód úlohy
        case <- quit:
            ticker.Stop()
            return
        }
    }
}()