Compartir a través de


IReliableDictionary<TKey,TValue>.AddOrUpdateAsync Método

Definición

Sobrecargas

AddOrUpdateAsync(ITransaction, TKey, Func<TKey,TValue>, Func<TKey,TValue,TValue>)

Usa las funciones especificadas para agregar un par clave-valor al diccionario confiable si la clave aún no existe, o para actualizar un par clave-valor en el diccionario confiable si la clave ya existe.

AddOrUpdateAsync(ITransaction, TKey, TValue, Func<TKey,TValue,TValue>)

Agrega un par clave-valor al diccionario confiable si la clave aún no existe, o actualiza un par clave-valor en el diccionario confiable mediante la función especificada si la clave ya existe.

AddOrUpdateAsync(ITransaction, TKey, Func<TKey,TValue>, Func<TKey,TValue,TValue>, TimeSpan, CancellationToken)

Usa las funciones especificadas para agregar un par clave-valor al diccionario confiable si la clave aún no existe, o para actualizar un par clave-valor en el diccionario confiable si la clave ya existe.

AddOrUpdateAsync(ITransaction, TKey, TValue, Func<TKey,TValue,TValue>, TimeSpan, CancellationToken)

Agrega un par clave-valor al diccionario confiable si la clave aún no existe, o actualiza un par clave-valor en el diccionario confiable mediante la función especificada si la clave ya existe.

AddOrUpdateAsync(ITransaction, TKey, Func<TKey,TValue>, Func<TKey,TValue,TValue>)

Usa las funciones especificadas para agregar un par clave-valor al diccionario confiable si la clave aún no existe, o para actualizar un par clave-valor en el diccionario confiable si la clave ya existe.

public System.Threading.Tasks.Task<TValue> AddOrUpdateAsync (Microsoft.ServiceFabric.Data.ITransaction tx, TKey key, Func<TKey,TValue> addValueFactory, Func<TKey,TValue,TValue> updateValueFactory);
abstract member AddOrUpdateAsync : Microsoft.ServiceFabric.Data.ITransaction * 'Key * Func<'Key, 'Value (requires 'Key :> IComparable<'Key> and 'Key :> IEquatable<'Key>)> * Func<'Key, 'Value, 'Value (requires 'Key :> IComparable<'Key> and 'Key :> IEquatable<'Key>)> -> System.Threading.Tasks.Task<'Value>
Public Function AddOrUpdateAsync (tx As ITransaction, key As TKey, addValueFactory As Func(Of TKey, TValue), updateValueFactory As Func(Of TKey, TValue, TValue)) As Task(Of TValue)

Parámetros

tx
ITransaction

Transacción con la que asociar esta operación.

key
TKey

Clave que se va a agregar o cuyo valor se va a actualizar.

addValueFactory
Func<TKey,TValue>

Función que se usa para generar un valor para una clave ausente.

updateValueFactory
Func<TKey,TValue,TValue>

Función que se usa para generar un nuevo valor para una clave existente basándose en el valor existente de la clave.

Devoluciones

Task<TValue>

Tarea que representa la operación asincrónica de adición o actualización. El resultado de la tarea es el nuevo valor de la clave. Este será el resultado de addValueFactory (si la clave estaba ausente) o el resultado de updateValueFactory (si la clave estaba presente).

Excepciones

tx es null, o key es null o no se puede serializar, o addValueFactory es null o updateValueFactory es null.

No se pudo completar la operación dentro del tiempo de espera predeterminado.

Excepción que se produce cuando no IReliableDictionary<TKey,TValue> está en Primary.

El sistema ha producido un error interno en la transacción. Reintentar la operación en una nueva transacción

Se produce cuando una llamada de método no es válida para el estado actual del objeto. Por ejemplo, la transacción usada ya ha finalizado: el usuario la ha confirmado o anulado. Si se produce esta excepción, es muy probable que haya un error en el código de servicio del uso de transacciones.

Indica que el diccionario confiable está cerrado o eliminado.

Se aplica a

AddOrUpdateAsync(ITransaction, TKey, TValue, Func<TKey,TValue,TValue>)

Agrega un par clave-valor al diccionario confiable si la clave aún no existe, o actualiza un par clave-valor en el diccionario confiable mediante la función especificada si la clave ya existe.

public System.Threading.Tasks.Task<TValue> AddOrUpdateAsync (Microsoft.ServiceFabric.Data.ITransaction tx, TKey key, TValue addValue, Func<TKey,TValue,TValue> updateValueFactory);
abstract member AddOrUpdateAsync : Microsoft.ServiceFabric.Data.ITransaction * 'Key * 'Value * Func<'Key, 'Value, 'Value (requires 'Key :> IComparable<'Key> and 'Key :> IEquatable<'Key>)> -> System.Threading.Tasks.Task<'Value>
Public Function AddOrUpdateAsync (tx As ITransaction, key As TKey, addValue As TValue, updateValueFactory As Func(Of TKey, TValue, TValue)) As Task(Of TValue)

Parámetros

tx
ITransaction

Transacción con la que asociar esta operación.

key
TKey

Clave que se va a agregar o cuyo valor se va a actualizar.

addValue
TValue

Valor que se va a agregar para una clave ausente. El valor puede ser null para los tipos de referencia.

updateValueFactory
Func<TKey,TValue,TValue>

Función que se usa para generar un nuevo valor para una clave existente basándose en el valor existente de la clave.

Devoluciones

Task<TValue>

Tarea que representa la operación asincrónica de adición o actualización. El resultado de la tarea es el nuevo valor de la clave. Esto será addValue (si la clave estaba ausente) o el resultado de updateValueFactory (si la clave estaba presente).

Excepciones

tx es null, o key es null o no se puede serializar o updateValueFactory es null.

No se pudo completar la operación dentro del tiempo de espera predeterminado.

Excepción que se produce cuando no IReliableDictionary<TKey,TValue> está en Primary.

El sistema ha producido un error interno en la transacción. Reintentar la operación en una nueva transacción

Se produce cuando una llamada de método no es válida para el estado actual del objeto. Por ejemplo, la transacción usada ya ha finalizado: el usuario la ha confirmado o anulado. Si se produce esta excepción, es muy probable que haya un error en el código de servicio del uso de transacciones.

Indica que el diccionario confiable está cerrado o eliminado.

Se aplica a

AddOrUpdateAsync(ITransaction, TKey, Func<TKey,TValue>, Func<TKey,TValue,TValue>, TimeSpan, CancellationToken)

Usa las funciones especificadas para agregar un par clave-valor al diccionario confiable si la clave aún no existe, o para actualizar un par clave-valor en el diccionario confiable si la clave ya existe.

public System.Threading.Tasks.Task<TValue> AddOrUpdateAsync (Microsoft.ServiceFabric.Data.ITransaction tx, TKey key, Func<TKey,TValue> addValueFactory, Func<TKey,TValue,TValue> updateValueFactory, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
abstract member AddOrUpdateAsync : Microsoft.ServiceFabric.Data.ITransaction * 'Key * Func<'Key, 'Value (requires 'Key :> IComparable<'Key> and 'Key :> IEquatable<'Key>)> * Func<'Key, 'Value, 'Value (requires 'Key :> IComparable<'Key> and 'Key :> IEquatable<'Key>)> * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Value>
Public Function AddOrUpdateAsync (tx As ITransaction, key As TKey, addValueFactory As Func(Of TKey, TValue), updateValueFactory As Func(Of TKey, TValue, TValue), timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of TValue)

Parámetros

tx
ITransaction

Transacción con la que asociar esta operación.

key
TKey

Clave que se va a agregar o cuyo valor se va a actualizar.

addValueFactory
Func<TKey,TValue>

Función que se usa para generar un valor para una clave ausente.

updateValueFactory
Func<TKey,TValue,TValue>

Función que se usa para generar un nuevo valor para una clave existente basándose en el valor existente de la clave.

timeout
TimeSpan

Cantidad de tiempo que se debe esperar a que se complete la operación antes de iniciar timeoutException. Se usa principalmente para evitar interbloqueos. El valor predeterminado es de 4 segundos.

cancellationToken
CancellationToken

Token para supervisar solicitudes de cancelación. El valor predeterminado es none.

Devoluciones

Task<TValue>

Tarea que representa la operación asincrónica de adición o actualización. El resultado de la tarea es el nuevo valor de la clave. Este será el resultado de addValueFactory (si la clave estaba ausente) o el resultado de updateValueFactory (si la clave estaba presente).

Excepciones

tx es null, o key es null o no se puede serializar, o addValueFactory es null o updateValueFactory es null.

timeout es negativo.

No se pudo completar la operación dentro del tiempo de espera especificado.

Operación cancelada.

Excepción que se produce cuando no IReliableDictionary<TKey,TValue> está en Primary.

El sistema ha producido un error interno en la transacción. Reintentar la operación en una nueva transacción

Se produce cuando una llamada de método no es válida para el estado actual del objeto. Por ejemplo, la transacción usada ya ha finalizado: el usuario la ha confirmado o anulado. Si se produce esta excepción, es muy probable que haya un error en el código de servicio del uso de transacciones.

Indica que el diccionario confiable está cerrado o eliminado.

Se aplica a

AddOrUpdateAsync(ITransaction, TKey, TValue, Func<TKey,TValue,TValue>, TimeSpan, CancellationToken)

Agrega un par clave-valor al diccionario confiable si la clave aún no existe, o actualiza un par clave-valor en el diccionario confiable mediante la función especificada si la clave ya existe.

public System.Threading.Tasks.Task<TValue> AddOrUpdateAsync (Microsoft.ServiceFabric.Data.ITransaction tx, TKey key, TValue addValue, Func<TKey,TValue,TValue> updateValueFactory, TimeSpan timeout, System.Threading.CancellationToken cancellationToken);
abstract member AddOrUpdateAsync : Microsoft.ServiceFabric.Data.ITransaction * 'Key * 'Value * Func<'Key, 'Value, 'Value (requires 'Key :> IComparable<'Key> and 'Key :> IEquatable<'Key>)> * TimeSpan * System.Threading.CancellationToken -> System.Threading.Tasks.Task<'Value>
Public Function AddOrUpdateAsync (tx As ITransaction, key As TKey, addValue As TValue, updateValueFactory As Func(Of TKey, TValue, TValue), timeout As TimeSpan, cancellationToken As CancellationToken) As Task(Of TValue)

Parámetros

tx
ITransaction

Transacción con la que asociar esta operación.

key
TKey

Clave que se va a agregar o cuyo valor se va a actualizar.

addValue
TValue

Valor que se va a agregar para una clave ausente. El valor puede ser null para los tipos de referencia.

updateValueFactory
Func<TKey,TValue,TValue>

Función que se usa para generar un nuevo valor para una clave existente basándose en el valor existente de la clave.

timeout
TimeSpan

Cantidad de tiempo que se debe esperar a que se complete la operación antes de iniciar timeoutException. Se usa principalmente para evitar interbloqueos. El valor predeterminado es de 4 segundos.

cancellationToken
CancellationToken

Token para supervisar solicitudes de cancelación. El valor predeterminado es none.

Devoluciones

Task<TValue>

Tarea que representa la operación asincrónica de adición o actualización. El resultado de la tarea es el nuevo valor de la clave. Esto será addValue (si la clave estaba ausente) o el resultado de updateValueFactory (si la clave estaba presente).

Excepciones

tx es null, o key es null o no se puede serializar o updateValueFactory es null.

timeout es negativo.

No se pudo completar la operación dentro del tiempo de espera especificado.

Operación cancelada.

Excepción que se produce cuando no IReliableDictionary<TKey,TValue> está en Primary.

El sistema ha producido un error interno en la transacción. Reintentar la operación en una nueva transacción

Se produce cuando una llamada de método no es válida para el estado actual del objeto. Por ejemplo, la transacción usada ya ha finalizado: el usuario la ha confirmado o anulado. Si se produce esta excepción, es muy probable que haya un error en el código de servicio del uso de transacciones.

Indica que el diccionario confiable está cerrado o eliminado.

Se aplica a