ImmutableInterlocked.Update Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
| Имя | Описание |
|---|---|
| Update<T,TArg>(ImmutableArray<T>, Func<ImmutableArray<T>,TArg,ImmutableArray<T>>, TArg) |
Изменяет неизменяемый массив на месте с семантикой семантики транзакций оптимистичной блокировки с помощью указанной функции преобразования. Преобразование выполняется столько раз, сколько необходимо, чтобы выиграть оптимистическую блокировку гонки. |
| Update<T,TArg>(T, Func<T,TArg,T>, TArg) |
Изменяет значение на месте с семантикой семантики транзакций оптимистичной блокировки с помощью указанной функции преобразования. Преобразование выполняется столько раз, сколько необходимо, чтобы выиграть оптимистическую блокировку гонки. |
| Update<T>(ImmutableArray<T>, Func<ImmutableArray<T>,ImmutableArray<T>>) |
Изменяет неизменяемый массив на месте с семантикой семантики транзакций оптимистичной блокировки с помощью указанной функции преобразования. Преобразование выполняется столько раз, сколько необходимо, чтобы выиграть оптимистическую блокировку гонки. |
| Update<T>(T, Func<T,T>) |
Изменяет значение на месте с семантикой семантики транзакций оптимистичной блокировки с помощью указанной функции преобразования. Преобразование выполняется столько раз, сколько необходимо, чтобы выиграть оптимистическую блокировку гонки. |
Update<T,TArg>(ImmutableArray<T>, Func<ImmutableArray<T>,TArg,ImmutableArray<T>>, TArg)
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
Изменяет неизменяемый массив на месте с семантикой семантики транзакций оптимистичной блокировки с помощью указанной функции преобразования. Преобразование выполняется столько раз, сколько необходимо, чтобы выиграть оптимистическую блокировку гонки.
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) where TArg : allows ref struct;
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
Параметры типа
- T
Тип данных в неизменяемом массиве.
- TArg
Тип аргумента, переданного в transformer.
Параметры
- location
- ImmutableArray<T>
Неизменяемый массив, который необходимо изменить.
- transformer
- Func<ImmutableArray<T>,TArg,ImmutableArray<T>>
Функция, которая создает новый массив из старого. Эта функция должна быть свободной от побочных эффектов, так как она может выполняться несколько раз, когда гонки происходят с другими потоками.
- transformerArgument
- TArg
Аргумент для передачи transformer.
Возвращаемое значение
true Значение расположения изменяется путем применения результата transformer функции; false если значение расположения осталось неизменным, так как последний вызов transformer возвращаемого значения возвращает существующее значение.
Применяется к
Update<T,TArg>(T, Func<T,TArg,T>, TArg)
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
Изменяет значение на месте с семантикой семантики транзакций оптимистичной блокировки с помощью указанной функции преобразования. Преобразование выполняется столько раз, сколько необходимо, чтобы выиграть оптимистическую блокировку гонки.
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;
public static bool Update<T,TArg>(ref T location, Func<T,TArg,T> transformer, TArg transformerArgument) where T : class where TArg : allows ref struct;
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
Параметры типа
- T
Тип данных.
- TArg
Тип аргумента, переданного в transformer.
Параметры
- location
- T
Переменная или поле, к которым может обращаться несколько потоков.
- transformer
- Func<T,TArg,T>
Функция, которая изменяет значение. Эта функция должна быть свободной от побочных эффектов, так как она может выполняться несколько раз, когда гонки происходят с другими потоками.
- transformerArgument
- TArg
Аргумент для передачи transformer.
Возвращаемое значение
true Значение расположения изменяется путем применения результата transformer функции; false если значение расположения осталось неизменным, так как последний вызов transformer возвращаемого значения возвращает существующее значение.
Применяется к
Update<T>(ImmutableArray<T>, Func<ImmutableArray<T>,ImmutableArray<T>>)
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
Изменяет неизменяемый массив на месте с семантикой семантики транзакций оптимистичной блокировки с помощью указанной функции преобразования. Преобразование выполняется столько раз, сколько необходимо, чтобы выиграть оптимистическую блокировку гонки.
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
Параметры типа
- T
Тип данных в неизменяемом массиве.
Параметры
- location
- ImmutableArray<T>
Неизменяемый массив, который необходимо изменить.
- transformer
- Func<ImmutableArray<T>,ImmutableArray<T>>
Функция, которая создает новый массив из старого. Эта функция должна быть свободной от побочных эффектов, так как она может выполняться несколько раз, когда гонки происходят с другими потоками.
Возвращаемое значение
true Значение расположения изменяется путем применения результата transformer функции; false если значение расположения осталось неизменным, так как последний вызов transformer возвращаемого значения возвращает существующее значение.
Применяется к
Update<T>(T, Func<T,T>)
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
- Исходный код:
- ImmutableInterlocked.cs
Изменяет значение на месте с семантикой семантики транзакций оптимистичной блокировки с помощью указанной функции преобразования. Преобразование выполняется столько раз, сколько необходимо, чтобы выиграть оптимистическую блокировку гонки.
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
Параметры типа
- T
Тип данных.
Параметры
- location
- T
Переменная или поле, к которым может обращаться несколько потоков.
- transformer
- Func<T,T>
Функция, которая изменяет значение. Эта функция должна быть свободной от побочных эффектов, так как она может выполняться несколько раз, когда гонки происходят с другими потоками.
Возвращаемое значение
true Значение расположения изменяется путем применения результата transformer функции; false если значение расположения осталось неизменным, так как последний вызов transformer возвращаемого значения возвращает существующее значение.