Middle
Heeft u ooit met asynchroniteit gewerkt?
sobes.tech AI
Antwoord van AI
Ja, werken met asynchroniteit is een gangbare praktijk, vooral bij het verwerken van gegevens en het communiceren met externe diensten. In Go worden goroutines en kanalen gebruikt om taken parallel uit te voeren en datastromen efficiënt te beheren.
Voorbeeld van asynchrone verwerking met goroutines en kanalen:
func processData(data []int, results chan<- int) {
for _, v := range data {
// simulatie van verwerking
results <- v * 2
}
close(results)
}
func main() {
data := []int{1, 2, 3, 4, 5}
results := make(chan int)
go processData(data, results)
for res := range results {
fmt.Println("Verwerkt:", res)
}
}
Asynchroniteit helpt om de hoofdthread niet te blokkeren en verbetert de prestaties bij het werken met grote hoeveelheden data of netwerkverzoeken.