Share via


ImmutableInterlocked.Update Methode

Definition

Überlädt

Update<T,TArg>(ImmutableArray<T>, Func<ImmutableArray<T>,TArg,ImmutableArray<T>>, TArg)

Mutiert ein unveränderliches Array mit optimistischer Transaktionssemantik über eine angegebene Transformationsfunktion. Es wird solange wiederholt versucht, die Transformation durchzuführen, bis das Rennen um die optimistische Sperre gewonnen ist.

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

Mutiert einen Wert an Ort und Stelle mit optimistischer Sperrtransaktionsemantik über eine angegebene Transformationsfunktion. Es wird solange wiederholt versucht, die Transformation durchzuführen, bis das Rennen um die optimistische Sperre gewonnen ist.

Update<T>(ImmutableArray<T>, Func<ImmutableArray<T>,ImmutableArray<T>>)

Mutiert ein unveränderliches Array mit optimistischer Transaktionssemantik über eine angegebene Transformationsfunktion. Es wird solange wiederholt versucht, die Transformation durchzuführen, bis das Rennen um die optimistische Sperre gewonnen ist.

Update<T>(T, Func<T,T>)

Mutiert einen Wert an Ort und Stelle mit optimistischer Sperrtransaktionsemantik über eine angegebene Transformationsfunktion. Es wird solange wiederholt versucht, die Transformation durchzuführen, bis das Rennen um die optimistische Sperre gewonnen ist.

Update<T,TArg>(ImmutableArray<T>, Func<ImmutableArray<T>,TArg,ImmutableArray<T>>, TArg)

Quelle:
ImmutableInterlocked.cs
Quelle:
ImmutableInterlocked.cs
Quelle:
ImmutableInterlocked.cs

Mutiert ein unveränderliches Array mit optimistischer Transaktionssemantik über eine angegebene Transformationsfunktion. Es wird solange wiederholt versucht, die Transformation durchzuführen, bis das Rennen um die optimistische Sperre gewonnen ist.

public:
generic <typename T, typename TArg>
 static bool Update(System::Collections::Immutable::ImmutableArray<T> % location, Func<System::Collections::Immutable::ImmutableArray<T>, TArg, System::Collections::Immutable::ImmutableArray<T>> ^ transformer, TArg transformerArgument);
public static bool Update<T,TArg> (ref System.Collections.Immutable.ImmutableArray<T> location, Func<System.Collections.Immutable.ImmutableArray<T>,TArg,System.Collections.Immutable.ImmutableArray<T>> transformer, TArg transformerArgument);
static member Update : ImmutableArray * Func<System.Collections.Immutable.ImmutableArray<'T>, 'Arg, System.Collections.Immutable.ImmutableArray<'T>> * 'Arg -> bool
Public Shared Function Update(Of T, TArg) (ByRef location As ImmutableArray(Of T), transformer As Func(Of ImmutableArray(Of T), TArg, ImmutableArray(Of T)), transformerArgument As TArg) As Boolean

Typparameter

T

Der Datentyp im unveränderlichen Array.

TArg

Der Typ des Arguments, das an den transformerübergeben wird.

Parameter

location
ImmutableArray<T>

Das unveränderliche Array, das geändert werden soll.

transformer
Func<ImmutableArray<T>,TArg,ImmutableArray<T>>

Eine Funktion, die das neue Array aus dem alten erzeugt. Diese Funktion sollte nebenwirkungsfrei sein, da sie mehrmals ausgeführt werden kann, wenn Rassen mit anderen Threads auftreten.

transformerArgument
TArg

Das an transformer zu übergebende Argument.

Gibt zurück

true, wenn der Wert des Speicherorts durch Anwenden des Ergebnisses der Funktion transformer geändert wird. false, wenn der Wert des Speicherorts derselbe bleibt, da der letzte Aufruf von transformer den vorhandenen Wert zurückgegeben hat.

Gilt für:

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

Quelle:
ImmutableInterlocked.cs
Quelle:
ImmutableInterlocked.cs
Quelle:
ImmutableInterlocked.cs

Mutiert einen Wert an Ort und Stelle mit optimistischer Sperrtransaktionsemantik über eine angegebene Transformationsfunktion. Es wird solange wiederholt versucht, die Transformation durchzuführen, bis das Rennen um die optimistische Sperre gewonnen ist.

public:
generic <typename T, typename TArg>
 where T : class static bool Update(T % location, Func<T, TArg, T> ^ transformer, TArg transformerArgument);
public static bool Update<T,TArg> (ref T location, Func<T,TArg,T> transformer, TArg transformerArgument) where T : class;
static member Update : 'T * Func<'T, 'Arg, 'T (requires 'T : null and 'T : null)> * 'Arg -> bool (requires 'T : null)
Public Shared Function Update(Of T As Class, TArg As Class) (ByRef location As T, transformer As Func(Of T, TArg, T), transformerArgument As TArg) As Boolean

Typparameter

T

Die Art der Daten.

TArg

Der Typ des Arguments, das an den transformerübergeben wird.

Parameter

location
T

Die Variable oder das Feld, die bzw. das geändert werden soll; mehrere Threads können darauf zugreifen.

transformer
Func<T,TArg,T>

Eine Funktion, die den Wert mutiert. Diese Funktion sollte nebenwirkungsfrei sein, da sie mehrmals ausgeführt werden kann, wenn Rassen mit anderen Threads auftreten.

transformerArgument
TArg

Das an transformer zu übergebende Argument.

Gibt zurück

true, wenn der Wert des Speicherorts durch Anwenden des Ergebnisses der Funktion transformer geändert wird. false, wenn der Wert des Speicherorts derselbe bleibt, da der letzte Aufruf von transformer den vorhandenen Wert zurückgegeben hat.

Gilt für:

Update<T>(ImmutableArray<T>, Func<ImmutableArray<T>,ImmutableArray<T>>)

Quelle:
ImmutableInterlocked.cs
Quelle:
ImmutableInterlocked.cs
Quelle:
ImmutableInterlocked.cs

Mutiert ein unveränderliches Array mit optimistischer Transaktionssemantik über eine angegebene Transformationsfunktion. Es wird solange wiederholt versucht, die Transformation durchzuführen, bis das Rennen um die optimistische Sperre gewonnen ist.

public:
generic <typename T>
 static bool Update(System::Collections::Immutable::ImmutableArray<T> % location, Func<System::Collections::Immutable::ImmutableArray<T>, System::Collections::Immutable::ImmutableArray<T>> ^ transformer);
public static bool Update<T> (ref System.Collections.Immutable.ImmutableArray<T> location, Func<System.Collections.Immutable.ImmutableArray<T>,System.Collections.Immutable.ImmutableArray<T>> transformer);
static member Update : ImmutableArray * Func<System.Collections.Immutable.ImmutableArray<'T>, System.Collections.Immutable.ImmutableArray<'T>> -> bool
Public Shared Function Update(Of T) (ByRef location As ImmutableArray(Of T), transformer As Func(Of ImmutableArray(Of T), ImmutableArray(Of T))) As Boolean

Typparameter

T

Der Datentyp im unveränderlichen Array.

Parameter

location
ImmutableArray<T>

Das unveränderliche Array, das geändert werden soll.

transformer
Func<ImmutableArray<T>,ImmutableArray<T>>

Eine Funktion, die das neue Array aus dem alten erzeugt. Diese Funktion sollte nebenwirkungsfrei sein, da sie mehrmals ausgeführt werden kann, wenn Rassen mit anderen Threads auftreten.

Gibt zurück

true, wenn der Wert des Speicherorts durch Anwenden des Ergebnisses der Funktion transformer geändert wird. false, wenn der Wert des Speicherorts derselbe bleibt, da der letzte Aufruf von transformer den vorhandenen Wert zurückgegeben hat.

Gilt für:

Update<T>(T, Func<T,T>)

Quelle:
ImmutableInterlocked.cs
Quelle:
ImmutableInterlocked.cs
Quelle:
ImmutableInterlocked.cs

Mutiert einen Wert an Ort und Stelle mit optimistischer Sperrtransaktionsemantik über eine angegebene Transformationsfunktion. Es wird solange wiederholt versucht, die Transformation durchzuführen, bis das Rennen um die optimistische Sperre gewonnen ist.

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

Typparameter

T

Die Art der Daten.

Parameter

location
T

Die Variable oder das Feld, die bzw. das geändert werden soll; mehrere Threads können darauf zugreifen.

transformer
Func<T,T>

Eine Funktion, die den Wert mutiert. Diese Funktion sollte nebenwirkungsfrei sein, da sie mehrmals ausgeführt werden kann, wenn Rassen mit anderen Threads auftreten.

Gibt zurück

true, wenn der Wert des Speicherorts durch Anwenden des Ergebnisses der Funktion transformer geändert wird. false, wenn der Wert des Speicherorts derselbe bleibt, da der letzte Aufruf von transformer den vorhandenen Wert zurückgegeben hat.

Gilt für: