Condividi tramite


Metodo ReplicaMetadata.CleanupDeletedItems

Quando sottoposto a override in una classe derivata, rimuove gli elementi contrassegnati come eliminati precedenti all'ora dell'ultima pulizia completata.

Spazio dei nomi: Microsoft.Synchronization.MetadataStorage
Assembly: Microsoft.Synchronization.MetadataStorage (in microsoft.synchronization.metadatastorage.dll)

Sintassi

'Dichiarazione
Public MustOverride Function CleanupDeletedItems ( _
    timeInterval As TimeSpan _
) As Boolean
'Utilizzo
Dim instance As ReplicaMetadata
Dim timeInterval As TimeSpan
Dim returnValue As Boolean

returnValue = instance.CleanupDeletedItems(timeInterval)
public abstract bool CleanupDeletedItems (
    TimeSpan timeInterval
)
public:
virtual bool CleanupDeletedItems (
    TimeSpan timeInterval
) abstract
public abstract boolean CleanupDeletedItems (
    TimeSpan timeInterval
)
public abstract function CleanupDeletedItems (
    timeInterval : TimeSpan
) : boolean

Parametri

  • timeInterval
    Periodo di memorizzazione minimo degli elementi eliminati nell'archivio dei metadati. Il valore 0 indica che la pulizia di tutti gli elementi eliminati viene eseguita immediatamente.

Valore restituito

true se la pulizia è stata eseguita; in caso contrario, false.

Eccezioni

Tipo di eccezione Condizione

ObjectDisposedException

L'oggetto è stato eliminato o non è stato inizializzato correttamente.

Osservazioni

Questo metodo consente a un provider di effettuare la pulizia degli elementi eliminati in base a una pianificazione. L'intervallo di tempo specificato da timeInterval è il periodo di memorizzazione minimo degli elementi eliminati nell'archivio dei metadati. Poiché gli elementi eliminati vengono rimossi solo trascorso il tempo stabilito in timeInterval, è possibile chiamare regolarmente CleanupDeletedItems, ad esempio ogni volta che il provider esegue il rilevamento delle modifiche. Mantenendo sempre gli elementi eliminati e contrassegnati come tali durante timeInterval, CleanupDeletedItems impedisce che il provider esegua enumerazioni complete che richiedono molte risorse di sistema.

Alla prima chiamata, CleanupDeletedItems archivia l'ora corrente come ora dell'ultima pulizia completata e non esegue altre azioni.

A ogni chiamata successiva, CleanupDeletedItems effettua i passaggi seguenti:

  1. Controlla l'ora corrente rispetto all'ora dell'ultima pulizia completata. Se il tempo trascorso è inferiore a timeInterval, non verranno eseguite ulteriori azioni e verrà restituito false.

  2. Rimuove tutti gli elementi eliminati precedenti all'ora dell'ultima pulizia completata.

  3. Salva l'ora corrente come ora dell'ultima pulizia completata.

  4. Aggiorna la conoscenza dimenticata per riflettere gli elementi eliminati che sono stati rimossi.

Tenere presente che CleanupDeletedItems effettua la pulizia solo degli elementi che sono stati contrassegnati come eliminati prima dell'ora dell'ultima pulizia completata e non di quelli contrassegnati come eliminati dopo l'ora dell'ultima pulizia completata. Ad esempio, CleanupDeletedItems pulisce gli elementi e archivia l'ora corrente. Ventiquattro giorni dopo, CleanupDeletedItems viene nuovamente chiamato con timeInterval impostato su 20 giorni. CleanupDeletedItems rimuove solo gli elementi eliminati più di 24 giorni prima, ovvero quando è stata completata l'ultima pulizia. Un elemento contrassegnato come eliminato tra 24 e 20 giorni prima, ad esempio 22 giorni prima, non verrà rimosso. Non verranno rimossi neanche gli elementi eliminati meno di 20 giorni prima.

Nota

La specifica del valore 0 per timeInterval è un caso speciale che comporta la rimozione di tutti gli elementi eliminati dall'archivio dei metadati. È consigliabile effettuare questa operazione solo quando un provider è ragionevolmente sicuro che tutte le altre repliche nella community di sincronizzazione siano sincronizzate tra loro, perché la rimozione troppo aggressiva di elementi eliminati potrebbe comportare un'enumerazione completa da parte di Sync Framework.

Vedere anche

Riferimento

Classe ReplicaMetadata
Membri ReplicaMetadata
Spazio dei nomi Microsoft.Synchronization.MetadataStorage