Junior — Middle
Bileşenler veya akışlar arasındaki etkileşimi düzenlemek için kanallar kullanma deneyiminizden bahsedin.
sobes.tech yapay zeka
AI'dan gelen yanıt
Go'da kanallar, goroutine'lar arasında güvenli veri alışverişi düzenlemek için kullanılır, bu da senkronizasyonu ve iletişimi kolaylaştırır.
İki goroutine arasında veri iletmek için kanal kullanımına örnek:
package main
import (
"fmt"
"time"
)
func worker(ch chan string) {
msg := <-ch // kanaldan mesaj al
fmt.Println("Alınan mesaj:", msg)
}
func main() {
ch := make(chan string)
go worker(ch)
ch <- "Merhaba main'den!" // kanala mesaj gönder
time.Sleep(time.Second) // goroutine'in tamamlanmasını bekle
}
Kanallar, veri yarışlarını önlemeye yardımcı olur ve eşzamanlılıkla çalışırken kodun okunabilirliğini ve bakımını kolaylaştırır.