ResourceMirror.Sync<ItemType,ResourceType> 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
정렬된 원본 데이터 항목 목록(currentItems) 및 정렬된 리소스 목록이 지정된 경우: 일치하는 리소스가 없는 각 원본 항목에 대해 리소스를 만들려고 시도합니다. 일치하는 원본 항목이 없는 각 리소스에 대해 해당 리소스를 삭제합니다. 일치하는 리소스가 있는 각 원본 항목에 대해 리소스를 업데이트합니다.
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))
형식 매개 변수
- ItemType
원본 항목의 유형입니다.
- ResourceType
리소스 유형입니다.
매개 변수
- currentItems
- IReadOnlyList<ItemType>
현재 원본 항목 목록입니다.
- resources
- List<ResourceType>
currentItems에 동기화된 에 대한 리소스 목록입니다.
항목을 리소스와 비교하는 함수입니다. 위 내용을 참조하세요.
콜백을 사용하여 누락된 리소스를 만듭니다. 위 내용을 참조하세요.
기존 리소스를 업데이트하기 위한 콜백입니다. 위 내용을 참조하세요.
더 이상 일치하는 원본 항목이 없는 리소스를 삭제하는 콜백입니다.
설명
이 동기화 후에는 리소스 목록에 currentItems의 각 항목에 대해 정확히 하나의 리소스가 있으며 currentItems 및 리소스의 길이는 동일합니다. 예외는 작성자 함수가 모든 항목에 대해 false를 반환하면 해당 항목에 일치하는 리소스가 없으며 리소스가 currentItems보다 짧습니다. 어쨌든 리소스는 정렬된 상태로 유지됩니다. 동기화는 데이터를 한 번의 패스로 완료하므로 O(max(currentItems.Count, 리소스)에서 완료됩니다. Count)) 시간입니다.