Uma representação lógica de contador para executar atualizações numéricas que precisam ser sincronizadas como eventos sequencialmente consistentes em vez de reatribuições individuais do número.
Por exemplo, o cliente offline 1 e o cliente 2 , que veem Counter.value como 0, podem chamar Counter.increment(1). Uma vez online, o valor convergirá para 2.
O esquema de propriedade acima pode ser estendido para permitir um contador anulável. Um Counter nunca armazena null valores em si, mas a propriedade contador no Realm.Object (por exemplo myRealmObject.myCounter) pode ser null.
Para criar um contador a partir de um valor null anterior ou para redefinir um contador anulável para null, use UpdateMode.Modified ou UpdateMode.All.
Uma representação lógica de contador para executar atualizações numéricas que precisam ser sincronizadas como eventos sequencialmente consistentes em vez de reatribuições individuais do número.
Por exemplo, o cliente offline 1 e o cliente 2 , que veem
Counter.value
como0
, podem chamarCounter.increment(1)
. Uma vez online, o valor convergirá para2
.Os tipos de contador não são suportados como:
Mixed
values$0
) em filter()Counter
ao filtrar, useCounter.value
.Declarar um contador
Um esquema de propriedade é declarado como:
"counter"
{ type: "int", presentation: "counter" }
Criar um contador
Use um
number
ao criar seu contador em um Realm.Object.Atualizando a contagem
Use os métodos de instância para atualizar a contagem subjacente.
Anulabilidade
O esquema de propriedade acima pode ser estendido para permitir um contador anulável. Um
Counter
nunca armazenanull
valores em si, mas a propriedade contador no Realm.Object (por exemplomyRealmObject.myCounter
) pode sernull
.Para criar um contador a partir de um valor
null
anterior ou para redefinir um contador anulável paranull
, use UpdateMode.Modified ou UpdateMode.All.