Transitions d’État dans les fournisseurs de clichés instantanés

Le modèle de transition d’état d’un fournisseur de clichés instantanés est simplifié par la sérialisation de la création de clichés instantanés à partir du moment où IVssBackupComponents :: StartSnapshotSet est appelé jusqu’à ce que l’appel à IVssBackupComponents ::D osnapshotset retourne. Si un autre demandeur tente de créer un cliché instantané pendant cette période, l’appel à StartSnapshotSet échouera avec l’erreur VSS _ E _ snapshot _ Set _ en _ cours, indiquant que le deuxième demandeur doit attendre et réessayer.

VSS appellera IVssProviderCreateSnapshotSet :: AbortSnapshots une fois que le demandeur a appelé DoSnapshotSet, même si le cliché instantané échoue ou est abandonné avant ce point. Cela signifie qu’un fournisseur ne recevra pas d’appel à AbortSnapshots tant que IVssProviderCreateSnapshotSet :: EndPrepareSnapshots n’a pas été appelé. Si un cliché instantané est abandonné ou échoue avant ce point, le fournisseur ne reçoit aucune indication tant qu’un nouveau cliché instantané n’a pas démarré. Pour cette raison, le fournisseur doit être prêt à gérer un appel hors séquence à IVssHardwareSnapshotProvider :: BeginPrepareSnapshot à tout moment. Cet appel hors séquence représente le début d’une nouvelle séquence de clichés instantanés et aura un nouvel ID de jeu de clichés instantanés.