Sobes.tech
Junior — Middle

Bufferlenmemiş bir iletişim kanalı aracılığıyla veri iletimi nasıl gerçekleştirilir?

sobes.tech yapay zeka

AI'dan gelen yanıt

Go'da tamponlamayan bir kanal aracılığıyla veri aktarımı senkroniktir: Gönderici, alıcı verileri okumadan önce bloklanır ve tersi de geçerlidir. Bu, goroutine'ler arasında doğrudan senkronizasyon sağlar.

Örnek:

ch := make(chan int) // tamponlamayan kanal

// Gönderici
go func() {
    ch <- 42 // alıcı okumadan önce bloklanır
}()

// Alıcı
val := <-ch // değer görünene kadar bloklanır
fmt.Println(val) // 42 yazdırır

Bu şekilde, veriler doğrudan, ara depolama olmadan iletilir ve gönderici ile alıcı arasında senkronizasyon garanti edilir.