FileRecordSequence.WriteRestartArea 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.
Écrit une zone de reprise dans la classe FileRecordSequence.
Surcharges
WriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection) |
Écrit une zone de reprise dans la classe FileRecordSequence. Cette méthode ne peut pas être héritée. |
WriteRestartArea(ArraySegment<Byte>) |
Écrit une zone de reprise dans la classe FileRecordSequence. Cette méthode ne peut pas être héritée. |
WriteRestartArea(IList<ArraySegment<Byte>>) |
Écrit une zone de reprise dans la classe FileRecordSequence. Cette méthode ne peut pas être héritée. |
WriteRestartArea(ArraySegment<Byte>, SequenceNumber) |
Écrit une zone de reprise dans la classe FileRecordSequence. Cette méthode ne peut pas être héritée. |
WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber) |
Écrit une zone de reprise dans la classe FileRecordSequence. Cette méthode ne peut pas être héritée. |
WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection) |
Écrit une zone de reprise dans la classe FileRecordSequence. Cette méthode ne peut pas être héritée. |
Remarques
Une zone de reprise peut être utilisée pour stocker temporairement des informations qui contiennent une dernière opération de point de contrôle du client. Lorsqu'une récupération est nécessaire, vous pouvez lire une zone de reprise et récupérer toutes les données de la dernière opération de point de contrôle. Ces données initialisent la table de transactions, la table de pages de modifications et la table de fichiers ouverts pour qu'elles puissent être utilisées dans le processus de récupération.
Une zone de reprise peut être lue à l'aide de la méthode ReadRestartAreas.
WriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection)
Écrit une zone de reprise dans la classe FileRecordSequence. Cette méthode ne peut pas être héritée.
public:
virtual System::IO::Log::SequenceNumber WriteRestartArea(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber newBaseSeqNum, System::IO::Log::ReservationCollection ^ reservations);
public System.IO.Log.SequenceNumber WriteRestartArea (ArraySegment<byte> data, System.IO.Log.SequenceNumber newBaseSeqNum, System.IO.Log.ReservationCollection reservations);
abstract member WriteRestartArea : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection -> System.IO.Log.SequenceNumber
override this.WriteRestartArea : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection -> System.IO.Log.SequenceNumber
Public Function WriteRestartArea (data As ArraySegment(Of Byte), newBaseSeqNum As SequenceNumber, reservations As ReservationCollection) As SequenceNumber
Paramètres
- data
- ArraySegment<Byte>
Liste des segments de tableau d'octets qui seront concaténés et ajoutés en tant qu'enregistrement.
- newBaseSeqNum
- SequenceNumber
Nouveau numéro de séquence de base. Le numéro de séquence spécifié doit être supérieur ou égal au numéro de séquence de base actuel.
- reservations
- ReservationCollection
ReservationCollection qui contient la réservation qui doit être utilisée pour cette zone de reprise.
Retours
Numéro de séquence de la zone de reprise écrite.
Implémente
Exceptions
Un ou plusieurs arguments ont la valeur null
.
newBaseSeqNum
n'est pas compris entre le numéro de base et le dernier numéro de la séquence.
- ou -
Une fin ou base d'archive nouvelle ou existante du journal actif n'est pas valide.
reservations
n'a pas été créé par cette séquence d'enregistrement.
- ou -
newBaseSeqNum
n'est pas valide pour cette séquence.
L'opération ne peut pas être effectuée car la séquence d'enregistrement a été ouverte en lecture seule.
La requête ne peut pas être exécutée en raison d'une exception d'E/S inattendue.
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.
La séquence d'enregistrement est complète.
Aucune réservation assez grande pour data
ne se trouve dans reservations
.
Remarques
Une zone de reprise peut être utilisée pour stocker temporairement des informations qui contiennent une dernière opération de point de contrôle du client. Lorsqu'une récupération est nécessaire, vous pouvez lire une zone de reprise et récupérer toutes les données de la dernière opération de point de contrôle. Ces données initialisent la table de transactions, la table de pages de modifications et la table de fichiers ouverts pour qu'elles puissent être utilisées dans le processus de récupération.
Une zone de reprise peut être lue à l'aide de la méthode ReadRestartAreas.
Lorsqu'une zone de reprise est écrite, les données dans les segments de tableau d'octets sont concaténées dans un tableau d'octets unique pour l'ajouter en tant qu'enregistrement. Il n'est pas possible de rétablir les segments du tableau en fractionnant les données lors de la lecture de la zone de reprise.
Si une réservation est spécifiée, la zone de reprise écrite utilise l’espace qui a été réservé précédemment, à l’aide d’une réservation contenue dans la collection. Si la méthode réussit, elle utilisera la plus petite réservation qui peut stocker les données et cette réservation sera supprimée de la collection.
Lorsque la méthode se termine correctement, cela signifie que le numéro de séquence de base a été mis à jour. Tous les enregistrements du journal avec des numéros de séquence inférieurs au nouveau numéro de séquence de base sont inaccessibles.
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 d'ajout asynchrone, par exemple, une défaillance du disque pendant la requête d'E/S, les exceptions sont levées lorsque la méthode EndReserveAndAppend est appelée.
S’applique à
WriteRestartArea(ArraySegment<Byte>)
Écrit une zone de reprise dans la classe FileRecordSequence. Cette méthode ne peut pas être héritée.
public:
virtual System::IO::Log::SequenceNumber WriteRestartArea(ArraySegment<System::Byte> data);
public System.IO.Log.SequenceNumber WriteRestartArea (ArraySegment<byte> data);
abstract member WriteRestartArea : ArraySegment<byte> -> System.IO.Log.SequenceNumber
override this.WriteRestartArea : ArraySegment<byte> -> System.IO.Log.SequenceNumber
Public Function WriteRestartArea (data As ArraySegment(Of Byte)) As SequenceNumber
Paramètres
- data
- ArraySegment<Byte>
Liste des segments de tableau d'octets qui seront concaténés et ajoutés en tant qu'enregistrement.
Retours
Numéro de séquence de la zone de reprise écrite.
Implémente
Exceptions
Un ou plusieurs arguments ont la valeur null
.
L'opération ne peut pas être effectuée car la séquence d'enregistrement a été ouverte en lecture seule.
La requête ne peut pas être exécutée en raison d'une exception d'E/S inattendue.
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.
La séquence d'enregistrement est complète.
Remarques
Une zone de reprise peut être utilisée pour stocker temporairement des informations qui contiennent une dernière opération de point de contrôle du client. Lorsqu'une récupération est nécessaire, vous pouvez lire une zone de reprise et récupérer toutes les données de la dernière opération de point de contrôle. Ces données initialisent la table de transactions, la table de pages de modifications et la table de fichiers ouverts pour qu'elles puissent être utilisées dans le processus de récupération.
Une zone de reprise peut être lue à l'aide de la méthode ReadRestartAreas.
Les données contenues dans les segments de tableau d'octets seront concaténées dans un tableau d'octets unique pour l'ajouter en tant qu'enregistrement. Il n'est pas possible de rétablir les segments du tableau en fractionnant les données lors de la lecture de la zone de reprise.
S’applique à
WriteRestartArea(IList<ArraySegment<Byte>>)
Écrit une zone de reprise dans la classe FileRecordSequence. Cette méthode ne peut pas être héritée.
public:
virtual System::IO::Log::SequenceNumber WriteRestartArea(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data);
public System.IO.Log.SequenceNumber WriteRestartArea (System.Collections.Generic.IList<ArraySegment<byte>> data);
abstract member WriteRestartArea : System.Collections.Generic.IList<ArraySegment<byte>> -> System.IO.Log.SequenceNumber
override this.WriteRestartArea : System.Collections.Generic.IList<ArraySegment<byte>> -> System.IO.Log.SequenceNumber
Public Function WriteRestartArea (data As IList(Of ArraySegment(Of Byte))) As SequenceNumber
Paramètres
- data
- IList<ArraySegment<Byte>>
Liste des segments de tableau d'octets qui seront concaténés et ajoutés en tant qu'enregistrement.
Retours
Numéro de séquence de la zone de reprise écrite.
Implémente
Exceptions
Un ou plusieurs arguments ont la valeur null
.
L'opération ne peut pas être effectuée car la séquence d'enregistrement a été ouverte en lecture seule.
La requête ne peut pas être exécutée en raison d'une exception d'E/S inattendue.
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.
La séquence d'enregistrement est complète.
Remarques
Une zone de reprise peut être utilisée pour stocker temporairement des informations qui contiennent une dernière opération de point de contrôle du client. Lorsqu'une récupération est nécessaire, vous pouvez lire une zone de reprise et récupérer toutes les données de la dernière opération de point de contrôle. Ces données initialisent la table de transactions, la table de pages de modifications et la table de fichiers ouverts pour qu'elles puissent être utilisées dans le processus de récupération.
Une zone de reprise peut être lue à l'aide de la méthode ReadRestartAreas.
Les données contenues dans les segments de tableau d'octets seront concaténées dans un tableau d'octets unique pour l'ajouter en tant qu'enregistrement. Il n'est pas possible de rétablir les segments du tableau en fractionnant les données lors de la lecture de la zone de reprise.
S’applique à
WriteRestartArea(ArraySegment<Byte>, SequenceNumber)
Écrit une zone de reprise dans la classe FileRecordSequence. Cette méthode ne peut pas être héritée.
public:
virtual System::IO::Log::SequenceNumber WriteRestartArea(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber newBaseSeqNum);
public System.IO.Log.SequenceNumber WriteRestartArea (ArraySegment<byte> data, System.IO.Log.SequenceNumber newBaseSeqNum);
abstract member WriteRestartArea : ArraySegment<byte> * System.IO.Log.SequenceNumber -> System.IO.Log.SequenceNumber
override this.WriteRestartArea : ArraySegment<byte> * System.IO.Log.SequenceNumber -> System.IO.Log.SequenceNumber
Public Function WriteRestartArea (data As ArraySegment(Of Byte), newBaseSeqNum As SequenceNumber) As SequenceNumber
Paramètres
- data
- ArraySegment<Byte>
Liste des segments de tableau d'octets qui seront concaténés et ajoutés en tant qu'enregistrement.
- newBaseSeqNum
- SequenceNumber
Nouveau numéro de séquence de base. Le numéro de séquence spécifié doit être supérieur ou égal au numéro de séquence de base actuel.
Retours
Numéro de séquence de la zone de reprise écrite.
Implémente
Exceptions
Un ou plusieurs arguments ont la valeur null
.
newBaseSeqNum
n'est pas compris entre le numéro de base et le dernier numéro de la séquence.
- ou -
Une fin ou base d'archive nouvelle ou existante du journal actif n'est pas valide.
newBaseSeqNum
n'est pas valide pour cette séquence.
L'opération ne peut pas être effectuée car la séquence d'enregistrement a été ouverte en lecture seule.
La requête ne peut pas être exécutée en raison d'une exception d'E/S inattendue.
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.
La séquence d'enregistrement est complète.
Remarques
Une zone de reprise peut être utilisée pour stocker temporairement des informations qui contiennent une dernière opération de point de contrôle du client. Lorsqu'une récupération est nécessaire, vous pouvez lire une zone de reprise et récupérer toutes les données de la dernière opération de point de contrôle. Ces données initialisent la table de transactions, la table de pages de modifications et la table de fichiers ouverts pour qu'elles puissent être utilisées dans le processus de récupération.
Une zone de reprise peut être lue à l'aide de la méthode ReadRestartAreas.
Lorsqu'une zone de reprise est écrite, les données dans les segments de tableau d'octets sont concaténées dans un tableau d'octets unique pour l'ajouter en tant qu'enregistrement. Il n'est pas possible de rétablir les segments du tableau en fractionnant les données lors de la lecture de la zone de reprise.
Lorsque la méthode se termine correctement, cela signifie que le numéro de séquence de base a été mis à jour. Tous les enregistrements du journal avec des numéros de séquence inférieurs au nouveau numéro de séquence de base sont inaccessibles.
S’applique à
WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber)
Écrit une zone de reprise dans la classe FileRecordSequence. Cette méthode ne peut pas être héritée.
public:
virtual System::IO::Log::SequenceNumber WriteRestartArea(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber newBaseSeqNum);
public System.IO.Log.SequenceNumber WriteRestartArea (System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber newBaseSeqNum);
abstract member WriteRestartArea : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber -> System.IO.Log.SequenceNumber
override this.WriteRestartArea : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber -> System.IO.Log.SequenceNumber
Public Function WriteRestartArea (data As IList(Of ArraySegment(Of Byte)), newBaseSeqNum As SequenceNumber) As SequenceNumber
Paramètres
- data
- IList<ArraySegment<Byte>>
Liste des segments de tableau d'octets qui seront concaténés et ajoutés en tant qu'enregistrement.
- newBaseSeqNum
- SequenceNumber
Nouveau numéro de séquence de base. Le numéro de séquence spécifié doit être supérieur ou égal au numéro de séquence de base actuel.
Retours
Numéro de séquence de la zone de reprise écrite.
Implémente
Exceptions
Un ou plusieurs arguments ont la valeur null
.
newBaseSeqNum
n'est pas compris entre le numéro de base et le dernier numéro de la séquence.
- ou -
Une fin ou base d'archive nouvelle ou existante du journal actif n'est pas valide.
newBaseSeqNum
n'est pas valide pour cette séquence.
L'opération ne peut pas être effectuée car la séquence d'enregistrement a été ouverte en lecture seule.
La requête ne peut pas être exécutée en raison d'une exception d'E/S inattendue.
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.
La séquence d'enregistrement est complète.
Remarques
Une zone de reprise peut être utilisée pour stocker temporairement des informations qui contiennent une dernière opération de point de contrôle du client. Lorsqu'une récupération est nécessaire, vous pouvez lire une zone de reprise et récupérer toutes les données de la dernière opération de point de contrôle. Ces données initialisent la table de transactions, la table de pages de modifications et la table de fichiers ouverts pour qu'elles puissent être utilisées dans le processus de récupération.
Une zone de reprise peut être lue à l'aide de la méthode ReadRestartAreas.
Lorsqu'une zone de reprise est écrite, les données dans les segments de tableau d'octets sont concaténées dans un tableau d'octets unique pour l'ajouter en tant qu'enregistrement. Il n'est pas possible de rétablir les segments du tableau en fractionnant les données lors de la lecture de la zone de reprise.
Lorsque la méthode se termine correctement, cela signifie que le numéro de séquence de base a été mis à jour. Tous les enregistrements du journal avec des numéros de séquence inférieurs au nouveau numéro de séquence de base sont inaccessibles.
S’applique à
WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection)
Écrit une zone de reprise dans la classe FileRecordSequence. Cette méthode ne peut pas être héritée.
public:
virtual System::IO::Log::SequenceNumber WriteRestartArea(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber newBaseSeqNum, System::IO::Log::ReservationCollection ^ reservations);
public System.IO.Log.SequenceNumber WriteRestartArea (System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber newBaseSeqNum, System.IO.Log.ReservationCollection reservations);
abstract member WriteRestartArea : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection -> System.IO.Log.SequenceNumber
override this.WriteRestartArea : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection -> System.IO.Log.SequenceNumber
Public Function WriteRestartArea (data As IList(Of ArraySegment(Of Byte)), newBaseSeqNum As SequenceNumber, reservations As ReservationCollection) As SequenceNumber
Paramètres
- data
- IList<ArraySegment<Byte>>
Liste des segments de tableau d'octets qui seront concaténés et ajoutés en tant qu'enregistrement.
- newBaseSeqNum
- SequenceNumber
Nouveau numéro de séquence de base. Le numéro de séquence spécifié doit être supérieur ou égal au numéro de séquence de base actuel.
- reservations
- ReservationCollection
ReservationCollection qui contient la réservation qui doit être utilisée pour cette zone de reprise.
Retours
Numéro de séquence de la zone de reprise écrite.
Implémente
Exceptions
Un ou plusieurs arguments ont la valeur null
.
newBaseSeqNum
n'est pas compris entre le numéro de base et le dernier numéro de la séquence.
- ou -
Une fin ou base d'archive nouvelle ou existante du journal actif n'est pas valide.
reservations
n'a pas été créé par cette séquence d'enregistrement.
- ou -
newBaseSeqNum
n'est pas valide pour cette séquence.
L'opération ne peut pas être effectuée car la séquence d'enregistrement a été ouverte en lecture seule.
La requête ne peut pas être exécutée en raison d'une exception d'E/S inattendue.
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.
La séquence d'enregistrement est complète.
Aucune réservation assez grande pour data
ne se trouve dans reservations
.
Remarques
Une zone de reprise peut être utilisée pour stocker temporairement des informations qui contiennent une dernière opération de point de contrôle du client. Lorsqu'une récupération est nécessaire, vous pouvez lire une zone de reprise et récupérer toutes les données de la dernière opération de point de contrôle. Ces données initialisent la table de transactions, la table de pages de modifications et la table de fichiers ouverts pour qu'elles puissent être utilisées dans le processus de récupération.
Une zone de reprise peut être lue à l'aide de la méthode ReadRestartAreas.
Lorsqu'une zone de reprise est écrite, les données dans les segments de tableau d'octets sont concaténées dans un tableau d'octets unique pour l'ajouter en tant qu'enregistrement. Il n'est pas possible de rétablir les segments du tableau en fractionnant les données lors de la lecture de la zone de reprise.
Si une réservation est spécifiée, la zone de reprise écrite utilise l’espace qui a été réservé précédemment, à l’aide d’une réservation contenue dans la collection. Si la méthode réussit, elle utilisera la plus petite réservation qui peut stocker les données et cette réservation sera supprimée de la collection.
Lorsque la méthode se termine correctement, cela signifie que le numéro de séquence de base a été mis à jour. Tous les enregistrements du journal avec des numéros de séquence inférieurs au nouveau numéro de séquence de base sont inaccessibles.
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 d'ajout asynchrone, par exemple, une défaillance du disque pendant la requête d'E/S, les exceptions sont levées lorsque la méthode EndReserveAndAppend est appelée.