Sobes.tech
Senior

Τι είναι η κατασκευή `<-ch` στο Go;

sobes.tech AI

Απάντηση από AI

Η κατασκευή <-ch στο Go χρησιμοποιείται για την απόκτηση της τιμής από ένα κανάλι ch. Είναι μια λειτουργία ανάγνωσης από το κανάλι που μπλοκάρει μέχρι να εμφανιστεί μια τιμή στο κανάλι.

Παράδειγμα:

ch := make(chan int)
func() {
    ch <- 42 // αποστέλλει μια τιμή στο κανάλι
}()

value := <-ch // διαβάζει την τιμή από το κανάλι, μπλοκάρει μέχρι η τιμή να είναι διαθέσιμη
fmt.Println(value) // θα εμφανίσει 42

Έτσι, το <-ch είναι μια σύνταξη για την απόκτηση δεδομένων από το κανάλι, που διασφαλίζει τον συγχρονισμό μεταξύ των goroutines.