Sprache

ThreadingTools.ApplyChangeOptimistically Methode

Definition

Überlädt

Name Beschreibung
ApplyChangeOptimistically<T,TArg>(T, TArg, Func<T,TArg,T>)

Optimistisch führt eine Werttransformation basierend auf einigen Feldern aus und versucht, sie auf das Feld zurück anzuwenden, und versucht so oft wie nötig, bis kein anderer Thread dasselbe Feld verändert.

ApplyChangeOptimistically<T>(T, Func<T,T>)

Optimistisch führt eine Werttransformation basierend auf einigen Feldern aus und versucht, sie auf das Feld zurück anzuwenden, und versucht so oft wie nötig, bis kein anderer Thread dasselbe Feld verändert.

ApplyChangeOptimistically<T,TArg>(T, TArg, Func<T,TArg,T>)

Optimistisch führt eine Werttransformation basierend auf einigen Feldern aus und versucht, sie auf das Feld zurück anzuwenden, und versucht so oft wie nötig, bis kein anderer Thread dasselbe Feld verändert.

public:
generic <typename T, typename TArg>
 where T : class static bool ApplyChangeOptimistically(T % hotLocation, TArg applyChangeArgument, Func<T, TArg, T> ^ applyChange);
public static bool ApplyChangeOptimistically<T,TArg>(ref T hotLocation, TArg applyChangeArgument, Func<T,TArg,T> applyChange) where T : class;
static member ApplyChangeOptimistically : 'T * 'Arg * Func<'T, 'Arg, 'T (requires 'T : null and 'T : null)> -> bool (requires 'T : null)
Public Function ApplyChangeOptimistically(Of T As Class, TArg As Class) (ByRef hotLocation As T, applyChangeArgument As TArg, applyChange As Func(Of T, TArg, T)) As Boolean

Typparameter

T

Der Datentyp, auf den die Änderung angewendet werden soll.

TArg

Der Typ des Arguments, das an die applyChange.

Parameter

hotLocation
T

Das Feld, das von mehreren Threads bearbeitet werden kann.

applyChangeArgument
TArg

Ein Argument, an das übergeben werden applyChangesoll.

applyChange
Func<T,TArg,T>

Eine Funktion, die sowohl den unveränderten Wert applyChangeArgumentals auch den geänderten Wert empfängt, und gibt dann den geänderten Wert zurück.

Gibt zurück

true wenn der Wert des Speicherorts geändert wird, indem das Ergebnis der applyChange Funktion angewendet wird; false wenn der Wert des Speicherorts unverändert blieb, da der letzte Aufruf des applyChange vorhandenen Werts zurückgegeben wurde.

Hinweise

Verwenden Sie diese Überladung, wenn applyChange ein einzelnes Element erforderlich ist, wie beim Aktualisieren unveränderlicher Sammlungstypen. Durch Übergeben des Elements als Methodenopernd kann der Aufrufer möglicherweise verhindern, dass für jeden Aufruf ein Schließen-Objekt zugewiesen wird.

Gilt für:

ApplyChangeOptimistically<T>(T, Func<T,T>)

Optimistisch führt eine Werttransformation basierend auf einigen Feldern aus und versucht, sie auf das Feld zurück anzuwenden, und versucht so oft wie nötig, bis kein anderer Thread dasselbe Feld verändert.

public:
generic <typename T>
 where T : class static bool ApplyChangeOptimistically(T % hotLocation, Func<T, T> ^ applyChange);
public static bool ApplyChangeOptimistically<T>(ref T hotLocation, Func<T,T> applyChange) where T : class;
static member ApplyChangeOptimistically : 'T * Func<'T, 'T (requires 'T : null and 'T : null)> -> bool (requires 'T : null)
Public Function ApplyChangeOptimistically(Of T As Class) (ByRef hotLocation As T, applyChange As Func(Of T, T)) As Boolean

Typparameter

T

Die Art der Daten.

Parameter

hotLocation
T

Das Feld, das von mehreren Threads bearbeitet werden kann.

applyChange
Func<T,T>

Eine Funktion, die den unveränderten Wert empfängt und den geänderten Wert zurückgibt.

Gibt zurück

true wenn der Wert des Speicherorts geändert wird, indem das Ergebnis der applyChange Funktion angewendet wird; false wenn der Wert des Speicherorts unverändert blieb, da der letzte Aufruf des applyChange vorhandenen Werts zurückgegeben wurde.

Gilt für: