Sobes.tech
Junior — Middle

Hoe worden parallelle berekeningen geïmplementeerd in de programmeertaal Go?

sobes.tech AI

Antwoord van AI

In de programmeertaal Go worden parallelle berekeningen geïmplementeerd met behulp van goroutines (goroutines) en kanalen (channels).

Goroutines zijn lichte threads die worden gestart met het sleutelwoord go. Ze maken het mogelijk functies asynchroon en parallel uit te voeren.

Voorbeeld van het parallel starten van twee functies:

func taak(id int) {
    fmt.Printf("Taak %d gestart\n", id)
    // simulatie van werk
    time.Sleep(time.Second)
    fmt.Printf("Taak %d voltooid\n", id)
}

func main() {
    go taak(1)
    go taak(2)
    time.Sleep(2 * time.Second) // zodat de goroutines kunnen afronden
}

Kanalen worden gebruikt voor synchronisatie en gegevensoverdracht tussen goroutines, wat een veilige uitwisseling van informatie mogelijk maakt zonder blokkades.

Op deze manier biedt Go eenvoudige en efficiënte middelen voor het organiseren van parallelle berekeningen.