Junior — Middle
Kas saaksite selgitada polling-mehhanismi Go keeles?
sobes.tech AI
Vastus AI-lt
Polling in Go on mehhanism, mis võimaldab perioodiliselt kontrollida ressursi või sündmuse olekut. Selle asemel, et oodata teavitust, küsib programm regulaarselt (poll) andmeallikat määratud intervalliga.
Go-s realiseeritakse seda sageli tsükli ja funktsioonide nagu time.Tick või time.Sleep abil, et luua viivitusi kontrollide vahel.
Lihtne polling näide:
package main
import (
"fmt"
"time"
)
func main() {
ticker := time.NewTicker(2 * time.Second)
defer ticker.Stop()
for {
select {
case <-ticker.C:
fmt.Println("Seisundi kontroll...")
// Siia võib lisada kontrolli loogika
}
}
}
See lähenemine on kasulik, kui on vaja regulaarselt kontrollida uuendusi, näiteks faili seisundit, serveri vastust või sõnumijada.