Junior — Middle
Czy możesz wyjaśnić mechanizm polling w języku Go?
sobes.tech AI
Odpowiedź od AI
Polling w Go to mechanizm okresowego sprawdzania stanu zasobu lub zdarzenia. Zamiast czekać na powiadomienie, program regularnie (poll) odpyta źródło danych z określonym interwałem.
W Go często realizuje się to za pomocą pętli i funkcji takich jak time.Tick lub time.Sleep, które tworzą opóźnienia między sprawdzeniami.
Przykład prostego polling:
package main
import (
"fmt"
"time"
)
func main() {
ticker := time.NewTicker(2 * time.Second)
defer ticker.Stop()
for {
select {
case <-ticker.C:
fmt.Println("Sprawdzanie stanu...")
// Tutaj można dodać logikę sprawdzania
}
}
}
Taki sposób jest przydatny, gdy konieczne jest regularne sprawdzanie aktualizacji, np. stanu pliku, odpowiedzi serwera lub kolejki wiadomości.