Partager via


FileRecordSequence.WriteRestartArea Méthode

Définition

É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.

S’applique à