ResourceMirror.Sync<ItemType,ResourceType> Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Dada uma lista classificada de itens de dados de origem (currentItems) e uma lista classificada de recursos: para cada item de origem que não tem um recurso correspondente, tente criar um recurso. Para cada recurso que não tem um item de origem correspondente, destrua esse recurso. Para cada item de origem com um recurso correspondente, atualize o recurso.
public static void Sync<ItemType,ResourceType> (System.Collections.Generic.IReadOnlyList<ItemType> currentItems, System.Collections.Generic.List<ResourceType> resources, Microsoft.MixedReality.WorldLocking.Core.ResourceMirror.CompareToResource<ItemType,ResourceType> compareIds, Microsoft.MixedReality.WorldLocking.Core.ResourceMirror.CreateResource<ItemType,ResourceType> creator, Microsoft.MixedReality.WorldLocking.Core.ResourceMirror.UpdateResource<ItemType,ResourceType> updater, Microsoft.MixedReality.WorldLocking.Core.ResourceMirror.DestroyResource<ResourceType> destroyer);
static member Sync : System.Collections.Generic.IReadOnlyList<'ItemType> * System.Collections.Generic.List<'ResourceType> * Microsoft.MixedReality.WorldLocking.Core.ResourceMirror.CompareToResource<'ItemType, 'ResourceType> * Microsoft.MixedReality.WorldLocking.Core.ResourceMirror.CreateResource<'ItemType, 'ResourceType> * Microsoft.MixedReality.WorldLocking.Core.ResourceMirror.UpdateResource<'ItemType, 'ResourceType> * Microsoft.MixedReality.WorldLocking.Core.ResourceMirror.DestroyResource<'ResourceType> -> unit
Public Shared Sub Sync(Of ItemType, ResourceType) (currentItems As IReadOnlyList(Of ItemType), resources As List(Of ResourceType), compareIds As ResourceMirror.CompareToResource(Of ItemType, ResourceType), creator As ResourceMirror.CreateResource(Of ItemType, ResourceType), updater As ResourceMirror.UpdateResource(Of ItemType, ResourceType), destroyer As ResourceMirror.DestroyResource(Of ResourceType))
Parâmetros de tipo
- ItemType
Tipo de itens de origem.
- ResourceType
Tipo de recursos.
Parâmetros
- currentItems
- IReadOnlyList<ItemType>
Lista de itens de origem atuais.
- resources
- List<ResourceType>
Lista de recursos para sincronizados com currentItems.
Função para comparar um item com um recurso. Veja acima.
Retorno de chamada para criar um recurso ausente. Veja acima.
Retorno de chamada para atualizar um recurso existente. Veja acima.
Retorno de chamada para destruir um recurso que não tem mais um item de origem correspondente.
Comentários
Após essa Sincronização, a lista de recursos terá exatamente um recurso para cada item em currentItems, e currentItems e recursos terão o mesmo comprimento. A exceção será se a função criador retornar false para qualquer item(s), esses itens não terão recursos correspondentes e os recursos serão menores que currentItems. De qualquer forma, os recursos permanecerão classificados. A sincronização é concluída em uma única passagem sobre os dados, portanto, em O(max(currentItems.Count, resources. Contagem)) hora.