Junior — Middle
Jaka jest rola flagi podczas próby odczytu z zamkniętego kanału w języku programowania?
sobes.tech AI
Odpowiedź od AI
W Go, podczas odczytu z kanału, operacja zwraca dwie wartości: samą wartość i flagę boolowską, która wskazuje, czy kanał jest otwarty.
Jeśli kanał jest zamknięty i wszystkie wartości zostały już odczytane, odczyt zwraca wartość zerową typu i false.
Przykład:
value, ok := <-ch
if !ok {
// Kanał jest zamknięty, dalsze odczyty są niemożliwe
}
W ten sposób, flaga ok pomaga określić, czy transmisja danych przez kanał została zakończona i czy należy przerwać odczyt.