ImmutableInterlocked.Update Metoda

Definicja

Przeciążenia

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

Mutates niezmiennej tablicy w miejscu z optymistycznym blokowaniem semantyki transakcji za pośrednictwem określonej funkcji przekształcania. Transformacja jest ponawiana tyle razy, ile to konieczne, aby wygrać optymistyczny wyścig blokady.

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

Wycisza wartość w miejscu z optymistycznym blokowaniem semantyki transakcji za pośrednictwem określonej funkcji przekształcania. Transformacja jest ponawiana tyle razy, ile to konieczne, aby wygrać optymistyczny wyścig blokady.

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

Mutates niezmiennej tablicy w miejscu z optymistycznym blokowaniem semantyki transakcji za pośrednictwem określonej funkcji przekształcania. Transformacja jest ponawiana tyle razy, ile to konieczne, aby wygrać optymistyczny wyścig blokady.

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

Wycisza wartość w miejscu z optymistycznym blokowaniem semantyki transakcji za pośrednictwem określonej funkcji przekształcania. Transformacja jest ponawiana tyle razy, ile to konieczne, aby wygrać optymistyczny wyścig blokady.

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

Mutates niezmiennej tablicy w miejscu z optymistycznym blokowaniem semantyki transakcji za pośrednictwem określonej funkcji przekształcania. Transformacja jest ponawiana tyle razy, ile to konieczne, aby wygrać optymistyczny wyścig blokady.

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

Parametry typu

T

Typ danych w tablicy niezmiennej.

TArg

Typ argumentu przekazanego do klasy transformer.

Parametry

location
ImmutableArray<T>

Tablica niezmienna, która ma zostać zmieniona.

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

Funkcja, która tworzy nową tablicę ze starej. Ta funkcja powinna być wolna od skutków ubocznych, ponieważ może działać wiele razy, gdy wyścigi występują z innymi wątkami.

transformerArgument
TArg

Argument do przekazania do metody transformer.

Zwraca

Boolean

true jeśli wartość lokalizacji zostanie zmieniona przez zastosowanie wyniku transformer funkcji, false jeśli wartość lokalizacji pozostała taka sama, ponieważ ostatnie wywołanie transformer zwróciło istniejącą wartość.

Dotyczy

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

Wycisza wartość w miejscu z optymistycznym blokowaniem semantyki transakcji za pośrednictwem określonej funkcji przekształcania. Transformacja jest ponawiana tyle razy, ile to konieczne, aby wygrać optymistyczny wyścig blokady.

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

Parametry typu

T

Typ danych.

TArg

Typ argumentu przekazanego do klasy transformer.

Parametry

location
T

Zmienna lub pole do zmiany, które mogą być dostępne przez wiele wątków.

transformer
Func<T,TArg,T>

Funkcja, która wycisza wartość. Ta funkcja powinna być wolna od skutków ubocznych, ponieważ może działać wiele razy, gdy wyścigi występują z innymi wątkami.

transformerArgument
TArg

Argument do przekazania do metody transformer.

Zwraca

Boolean

true jeśli wartość lokalizacji zostanie zmieniona przez zastosowanie wyniku transformer funkcji, false jeśli wartość lokalizacji pozostała taka sama, ponieważ ostatnie wywołanie transformer zwróciło istniejącą wartość.

Dotyczy

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

Mutates niezmiennej tablicy w miejscu z optymistycznym blokowaniem semantyki transakcji za pośrednictwem określonej funkcji przekształcania. Transformacja jest ponawiana tyle razy, ile to konieczne, aby wygrać optymistyczny wyścig blokady.

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

Parametry typu

T

Typ danych w niezmiennej tablicy.

Parametry

location
ImmutableArray<T>

Tablica niezmienna, która ma zostać zmieniona.

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

Funkcja, która tworzy nową tablicę ze starej. Ta funkcja powinna być wolna od skutków ubocznych, ponieważ może działać wiele razy, gdy wyścigi występują z innymi wątkami.

Zwraca

Boolean

true jeśli wartość lokalizacji zostanie zmieniona przez zastosowanie wyniku transformer funkcji, false jeśli wartość lokalizacji pozostała taka sama, ponieważ ostatnie wywołanie transformer zwróciło istniejącą wartość.

Dotyczy

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

Wycisza wartość w miejscu z optymistycznym blokowaniem semantyki transakcji za pośrednictwem określonej funkcji przekształcania. Transformacja jest ponawiana tyle razy, ile to konieczne, aby wygrać optymistyczny wyścig blokady.

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

Parametry typu

T

Typ danych.

Parametry

location
T

Zmienna lub pole do zmiany, które mogą być dostępne przez wiele wątków.

transformer
Func<T,T>

Funkcja, która wycisza wartość. Ta funkcja powinna być wolna od skutków ubocznych, ponieważ może działać wiele razy, gdy wyścigi występują z innymi wątkami.

Zwraca

Boolean

true jeśli wartość lokalizacji zostanie zmieniona przez zastosowanie wyniku transformer funkcji, false jeśli wartość lokalizacji pozostała taka sama, ponieważ ostatnie wywołanie transformer zwróciło istniejącą wartość.

Dotyczy