Glosarium Web & Coding
Apa itu Goroutine?
Goroutine adalah fungsi Go yang berjalan bersamaan dengan bagian program lainnya, dimulai dengan menulis go sebelum pemanggilan fungsi. Program berhenti begitu main selesai tanpa menunggu goroutine lain, jadi hasilnya dikirim lewat channel: ch <- nilai mengirim, dan <-ch menerima.
Cara menulisnya
go namaFungsi(argumen) · ch := make(chan int) · ch <- 5 · x := <-ch
Contoh
hasil := make(chan int) go kuadrat(4, hasil) fmt.Println(<-hasil) // 16: main menunggu sampai nilai terkirim
Kesalahan yang sering terjadi
main mengirim ke channel tanpa buffer padahal tidak ada goroutine lain yang menerima, sehingga program berhenti dengan fatal error: all goroutines are asleep - deadlock!
Latih langsung
Pelajaran Goroutine dan channel (konsep) · kelas Go dari Nol · ±13 menit, latihan dinilai otomatis (butuh akun gratis).
Diperbarui .