Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Mengganggu Pelaksanaan Goroutine (*TCPListener) dengan Anggun. Terima()?
Mengganggu Pelaksana Goroutine (*TCPListener) Terima
Apabila membuat pelayan yang bertindak balas kepada pelanggan melalui sambungan TCP, go-routine sering digunakan untuk mengendalikan sambungan masuk menggunakan (*TCPListener).Terima(). Timbul persoalan tentang cara menutup pelayan dengan bersih dan mengganggu goroutine yang disekat dalam panggilan ini.
Dokumentasi untuk (*TCPListener).Accept() menyatakan bahawa ia menunggu sambungan seterusnya dan mengembalikan generik Samb. Walau bagaimanapun, ia memberikan maklumat terhad tentang cara untuk mengganggu operasi menyekat ini.
Penyelesaian terletak pada penggunaan (TCPListener).Close(), yang menutup pendengar dan menyebabkan goroutine melaksanakan (TCPListener).Terima() untuk kembali. Ini membolehkan pelayan ditutup dengan anggun dan rutin harian terganggu. Laluan rutin hendaklah kembali daripada panggilan dan membenarkan pelayan keluar dengan bersih.
Atas ialah kandungan terperinci Bagaimana untuk Mengganggu Pelaksanaan Goroutine (*TCPListener) dengan Anggun. Terima()?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!