Junior — Middle
Ποιος είναι ο σκοπός της λέξης-κλειδιού 'default' μέσα σε μια κατασκευή select;
sobes.tech AI
Απάντηση από AI
Στη δομή select στη Go, η λέξη-κλειδί default χρησιμοποιείται για να χειριστεί την περίπτωση όπου κανένα από τα κανάλια δεν είναι έτοιμο για μια λειτουργία (ανάγνωση ή εγγραφή). Αν κανένα κανάλι δεν είναι διαθέσιμο, το μπλοκ default εκτελείται αμέσως, αποφεύγοντας το μπλοκάρισμα της goroutine.
Παράδειγμα:
select {
case msg := <-ch1:
fmt.Println("Λήφθηκε μήνυμα από το ch1:", msg)
case ch2 <- 42:
fmt.Println("Μήνυμα αποστάλθηκε στο ch2")
default:
fmt.Println("Κανένα κανάλι δεν είναι έτοιμο, εκτελείται το default")
}
Έτσι, το default επιτρέπει την μη μπλοκαριστική επιλογή καναλιών.