Bagaimana untuk Mengendalikan Ralat daripada Goroutines dalam Go?

Linda Hamilton
Lepaskan: 2024-11-16 15:08:02
asal
973 orang telah melayarinya

How to Handle Errors from Goroutines in Go?

Mengembalikan Ralat daripada Goroutines melalui Saluran

Apabila melaksanakan fungsi dalam goroutine, ia menjadi perlu untuk mengendalikan ralat dengan cekap. Dalam Go, fungsi sering mengembalikan nilai dan ralat, seperti yang ditunjukkan oleh fungsi createHashedPassword:

func createHashedPassword(password string) (string, error) {
  // Code
}
Salin selepas log masuk

Untuk menghantar kedua-dua data dan ralat daripada goroutine, adalah perkara biasa untuk menggunakan saluran. Walau bagaimanapun, persoalan timbul: bagaimanakah kita boleh menangani ralat dengan berkesan?

Penyelesaian terletak pada mencipta struktur data tersuai, seperti struct Hasil, untuk merangkumi output dan ralat:

type Result struct {
    Message string
    Error error
}
Salin selepas log masuk

Setelah struktur ini ditakrifkan, kami boleh membuat saluran dan menggunakannya untuk komunikasi:

ch := make(chan Result)
Salin selepas log masuk

Dengan saluran ini tersedia, goroutine boleh menulis objek Hasil yang mengandungi mesej dan ralat, memastikan pengendalian data dan ralat yang cekap antara tugas serentak.

Atas ialah kandungan terperinci Bagaimana untuk Mengendalikan Ralat daripada Goroutines dalam Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan