FileRecordSequence.BeginFlush(SequenceNumber, AsyncCallback, Object) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Commence une opération de vidage asynchrone, en utilisant l'espace précédemment réservé dans la séquence. Cette méthode ne peut pas être héritée.
public:
virtual IAsyncResult ^ BeginFlush(System::IO::Log::SequenceNumber sequenceNumber, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginFlush (System.IO.Log.SequenceNumber sequenceNumber, AsyncCallback callback, object state);
abstract member BeginFlush : System.IO.Log.SequenceNumber * AsyncCallback * obj -> IAsyncResult
override this.BeginFlush : System.IO.Log.SequenceNumber * AsyncCallback * obj -> IAsyncResult
Public Function BeginFlush (sequenceNumber As SequenceNumber, callback As AsyncCallback, state As Object) As IAsyncResult
Paramètres
- sequenceNumber
- SequenceNumber
Le numéro de séquence de l'enregistrement le plus récent doit être écrit. Si SequenceNumber n'est pas valide, alors tous les enregistrements doivent être écrits.
- callback
- AsyncCallback
Rappel asynchrone facultatif à appeler lorsque le vidage est terminé.
- state
- Object
Objet fourni par l'utilisateur qui distingue cette requête de vidage asynchrone particulière des autres requêtes.
Retours
Objet IAsyncResult qui représente l'opération de vidage asynchrone qui pourrait être toujours en attente.
Implémente
Exceptions
Un ou plusieurs arguments ne sont pas valides.
sequenceNumber
n'est pas valide pour cette séquence.
sequenceNumber
n'est pas compris entre le numéro de base et le dernier numéro de la séquence.
Une erreur d'E/S s'est produite lors du vidage des données.
La méthode a été appelée après la suppression de la séquence.
La mémoire disponible n'est pas suffisante pour continuer l'exécution du programme.
Remarques
Vous devez passer l'objet IAsyncResult retourné par la méthode actuelle à la méthode EndFlush pour vous assurer de la fin du vidage et de la libération appropriée des ressources. Si une erreur se produit pendant un vidage asynchrone, une exception n'est pas levée tant que la méthode EndFlush n'est pas appelée avec le IAsyncResult retourné par cette méthode.
L'appel de cette méthode permet de vous assurer que tous les enregistrements ajoutés à la FileRecordSequence sont écrits de façon durable.
Si une séquence d’enregistrement a été supprimée ou si vous passez un argument non valide, les exceptions sont immédiatement levées dans cette opération. Lorsque des erreurs se sont produites pendant une requête de vidage asynchrone, par exemple, une défaillance du disque pendant la requête d'E/S, les exceptions sont levées lorsque la méthode EndFlush est appelée.