context.WithValue: Hinzufügen mehrerer Schlüssel-Wert-Paare
Das Kontextpaket in Go ermöglicht es Entwicklern, anforderungsspezifische Daten an die Anforderungsbearbeitung zu übergeben Funktionen mit der Funktion context.WithValue(). Diese Funktion erstellt einen neuen Kontext, der eine Kopie des übergeordneten Kontexts ist, mit dem bereitgestellten Schlüssel-Wert-Paar.
Mehrere Schlüssel-Wert-Paare im Kontext
Wann Wenn Sie mit mehreren Schlüssel-Wert-Paaren arbeiten, haben Sie mehrere Möglichkeiten:
type Values struct { m map[string]string } func (v Values) Get(key string) string { return v.m[key] }
Mit dieser Struktur können Sie sie wie folgt zum Kontext hinzufügen:
v := Values{map[string]string{ "1": "one", "2": "two", }} c := context.WithValue(c, "myvalues", v) fmt.Println(c.Value("myvalues").(Values).Get("2")) // Prints "two"
Leistungsüberlegungen
Der beste Ansatz hängt von der konkreten Verwendung ab Fall:
Denken Sie daran, dass context.Context unveränderlich ist Jedes Mal, wenn Sie ein neues Schlüssel-Wert-Paar hinzufügen, wird ein neuer Kontext erstellt. Berücksichtigen Sie bei der Auswahl eines Ansatzes die Anzahl der Schlüssel-Wert-Paare und die Leistungsanforderungen.
Das obige ist der detaillierte Inhalt vonWie übergebe ich effizient mehrere Schlüssel-Wert-Paare mit context.WithValue()?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!