Junior — Middle
Ποια τιμή επιστρέφει ένα κλειστό κανάλι σε μια γλώσσα προγραμματισμού;
sobes.tech AI
Απάντηση από AI
Στη γλώσσα Go, κατά την ανάγνωση από ένα κλειστό κανάλι, επιστρέφεται μια τιμή μηδέν του τύπου του καναλιού και η τιμή false στο δεύτερο επιστρεφόμενο μέρος, αν χρησιμοποιείται η σύνταξη με δύο επιστρεφόμενες τιμές. Αυτό επιτρέπει τον προσδιορισμό ότι το κανάλι είναι κλειστό και δεν θα στέλνει πλέον δεδομένα.
Παράδειγμα:
ch := make(chan int)
close(ch)
v, ok := <-ch
fmt.Println(v, ok) // Θα εμφανίσει: 0 false
Εδώ, το v είναι η τιμή μηδέν του τύπου int (δηλαδή 0), και το ok είναι false, που σηματοδοτεί ότι το κανάλι είναι κλειστό.