Fehler von Goroutinen über Kanäle zurückgeben
Beim Ausführen von Funktionen in Goroutinen ist es notwendig, Fehler effizient zu behandeln. In Go geben Funktionen oft sowohl einen Wert als auch einen Fehler zurück, wie die Funktion createHashedPassword zeigt:
func createHashedPassword(password string) (string, error) { // Code }
Um sowohl Daten als auch Fehler von einer Goroutine zu übergeben, werden häufig Kanäle verwendet. Es stellt sich jedoch die Frage: Wie können wir Fehler effektiv behandeln?
Die Lösung liegt in der Erstellung einer benutzerdefinierten Datenstruktur, wie z. B. einer Ergebnisstruktur, um die Ausgabe und den Fehler zu umfassen:
type Result struct { Message string Error error }
Sobald diese Struktur definiert ist, können wir einen Kanal instanziieren und ihn für die Kommunikation nutzen:
ch := make(chan Result)
Wenn dieser Kanal eingerichtet ist, können Goroutinen Ergebnisobjekte schreiben, die Folgendes enthalten: Meldungen und Fehler, wodurch eine effiziente Daten- und Fehlerbehandlung zwischen gleichzeitigen Aufgaben gewährleistet wird.
Das obige ist der detaillierte Inhalt vonWie gehe ich mit Fehlern von Goroutinen in Go um?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!