Mengekalkan Goroutine Utama Go Project Berjalan Selama-lamanya
Tidak seperti fungsi utama dalam bahasa pengaturcaraan lain, goroutine utama Go keluar apabila kembali daripada fungsi tersebut. Ini menimbulkan persoalan: bagaimanakah kita boleh memastikan goroutine utama berjalan selama-lamanya?
"Sleeping" the Goroutine
Beberapa konstruk boleh menyekat goroutine utama tanpa menggunakan sumber CPU:
Menghentikan Goroutine
Apabila diingini untuk menyediakan cara untuk berhenti, saluran boleh digunakan:
Tidur Tanpa Menghalang
Jika kita tidak mahu menyekat goroutine utama tetapi hanya menghalangnya daripada tamat, binaan berikut boleh digunakan:
Nota:
Menutup saluran berhenti boleh menamatkan program pada bila-bila masa, walaupun lain goroutine sedang berjalan. Ini kerana goroutine utama kembali apabila diterima daripada saluran tertutup, menyebabkan program keluar sebelum goroutin bukan utama selesai.
Atas ialah kandungan terperinci Bagaimana untuk Memastikan Goroutine Utama Program Go Berjalan Selama-lamanya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!