Junior — Middle
Go dilinde polling mekanizmasını açıklayabilir misiniz?
sobes.tech yapay zeka
AI'dan gelen yanıt
Go dilinde polling, bir kaynak veya olayın durumunun periyodik olarak kontrol edilmesi mekanizmasıdır. Bildirim beklemek yerine, program düzenli olarak (poll) veri kaynağını belirli aralıklarla sorgular.
Go'da bu genellikle döngü ve time.Tick veya time.Sleep gibi fonksiyonlar kullanılarak, kontroller arasında gecikmeler oluşturularak gerçekleştirilir.
Basit bir polling örneği:
package main
import (
"fmt"
"time"
)
func main() {
ticker := time.NewTicker(2 * time.Second)
defer ticker.Stop()
for {
select {
case <-ticker.C:
fmt.Println("Durum kontrol ediliyor...")
// Burada kontrol mantığını ekleyebilirsiniz
}
}
}
Bu yaklaşım, örneğin, dosya durumu, sunucu yanıtı veya mesaj kuyruğu gibi güncellemeleri düzenli olarak kontrol etmek gerektiğinde faydalıdır.