Sobes.tech
Junior — Middle

Was passiert, wenn man in einen Kanal schreibt, dessen Puffer vollständig gefüllt ist?

sobes.tech KI

Antwort von AI

In Go, wenn Sie versuchen, einen Wert in einen gepufferten Kanal zu schreiben, der vollständig gefüllt ist, wird die Schreiboperation blockiert, bis im Kanal Platz frei wird (d.h., bis jemand aus dem Kanal liest). Dies sorgt für Synchronisation zwischen Goroutinen und verhindert Datenverlust.

Beispiel:

ch := make(chan int, 2) // Puffer mit 2 Elementen
ch <- 1
ch <- 2
// ch <- 3 // hier wird die Schreiboperation blockiert, bis jemand aus ch liest