ThreadingTools.ApplyChangeOptimistically Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
ApplyChangeOptimistically<T,TArg>(T, TArg, Func<T,TArg,T>) |
Führt optimistisch einige Werttransformation auf Grundlage eines Felds aus, und versucht es so oft wie nötig wieder auf das Feld anzuwenden, bis kein anderer Thread dasselbe Feld bearbeitet. |
ApplyChangeOptimistically<T>(T, Func<T,T>) |
Führt optimistisch einige Werttransformation auf Grundlage eines Felds aus, und versucht es so oft wie nötig wieder auf das Feld anzuwenden, bis kein anderer Thread dasselbe Feld bearbeitet. |
ApplyChangeOptimistically<T,TArg>(T, TArg, Func<T,TArg,T>)
Führt optimistisch einige Werttransformation auf Grundlage eines Felds aus, und versucht es so oft wie nötig wieder auf das Feld anzuwenden, bis kein anderer Thread dasselbe Feld bearbeitet.
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 den applyChange
übergeben wird.
Parameter
- hotLocation
- T
Das Feld, das von mehreren Threads bearbeitet wird.
- applyChangeArgument
- TArg
Ein Argument, das an übergeben werden soll applyChange
.
- applyChange
- Func<T,TArg,T>
Eine Funktion, die sowohl den unveränderten Wert als applyChangeArgument
auch empfängt, und gibt dann den geänderten Wert zurück.
Gibt zurück
true
, wenn der Wert des Speicherorts durch Anwenden des Ergebnisses der Funktion applyChange
geändert wird. false
, wenn der Wert des Speicherorts derselbe bleibt, da der letzte Aufruf von applyChange
den vorhandenen Wert zurückgegeben hat.
Hinweise
Verwenden Sie diese Überladung, wenn applyChange
ein einzelnes Element erforderlich ist, wie es beim Aktualisieren unveränderlicher Sammlungstypen üblich ist. Durch Übergeben des Elements als Methodenopernd kann der Aufrufer möglicherweise vermeiden, dass für jeden Aufruf ein Verschlussobjekt zugewiesen wird.
Gilt für:
ApplyChangeOptimistically<T>(T, Func<T,T>)
Führt optimistisch einige Werttransformation auf Grundlage eines Felds aus, und versucht es so oft wie nötig wieder auf das Feld anzuwenden, bis kein anderer Thread dasselbe Feld bearbeitet.
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 wird.
- applyChange
- Func<T,T>
Eine Funktion, die den unveränderten Wert erhält und den geänderten Wert zurückgibt.
Gibt zurück
true
, wenn der Wert des Speicherorts durch Anwenden des Ergebnisses der Funktion applyChange
geändert wird. false
, wenn der Wert des Speicherorts derselbe bleibt, da der letzte Aufruf von applyChange
den vorhandenen Wert zurückgegeben hat.