語言

IRecordSequence.WriteRestartArea 方法

定義

當在衍生類別中被覆寫時,會寫入一個重啟區域到 IRecordSequence。

多載

名稱 Description
WriteRestartArea(ArraySegment<Byte>)

當在衍生類別中被覆寫時,會寫入一個重啟區域到 IRecordSequence。

WriteRestartArea(IList<ArraySegment<Byte>>)

當在衍生類別中被覆寫時,會寫入一個重啟區域到 IRecordSequence。

WriteRestartArea(ArraySegment<Byte>, SequenceNumber)

當在衍生類別中覆寫時,會寫入一個重啟區域, IRecordSequence 並更新基底序列號。

WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber)

當在衍生類別中覆寫時,會寫入一個重啟區域, IRecordSequence 並更新基底序列號。

WriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection)

當在衍生類別中覆寫時,會用保留寫入 IRecordSequence restart 區域,並更新基底序號。

WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection)

當在衍生類別中覆寫時,會用保留寫入 IRecordSequence restart 區域,並更新基底序號。

備註

重新啟動區域用於暫時儲存包含用戶端最後檢查點操作的資訊。 當需要復原時,你可以解析重新啟動區域,取得上一次檢查點操作的所有資料。 這些資料會初始化交易表、髒頁表和開啟檔案表,讓它們能用於復原過程。 重新啟動區域可以用此 ReadRestartAreas 方法讀取。

WriteRestartArea(ArraySegment<Byte>)

當在衍生類別中被覆寫時,會寫入一個重啟區域到 IRecordSequence。

public:
 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
Public Function WriteRestartArea (data As ArraySegment(Of Byte)) As SequenceNumber

參數

data
ArraySegment<Byte>

一份將被串接並附加為記錄的位元組陣列區段清單。

傳回

書寫重啟區的序號。

例外狀況

一或多個引數無效。

在寫入重啟區域時發生了 I/O 錯誤。

記錄序列無法產生足夠的空閒空間來容納新的重啟區域。

該方法是在序列被處理後才被呼叫的。

備註

重新啟動區域用於暫時儲存包含用戶端最後檢查點操作的資訊。 通用日誌檔案系統(CLFS)維護兩個重啟區域,以確保至少有一個有效區域始終可用。 當需要恢復時,CLFS 會讀取重新啟動區域及上次檢查點操作的所有資料。 這些資料會初始化交易表、髒頁表和開啟檔案表,讓它們能用於復原過程。

重新啟動區域可以用此 ReadRestartAreas 方法讀取。

位元組陣列區段中的資料會被串接成一個位元組陣列,作為記錄附加。 當讀取重新啟動區域時,並未提供將資料分割回陣列區段的配置。

適用於

WriteRestartArea(IList<ArraySegment<Byte>>)

當在衍生類別中被覆寫時,會寫入一個重啟區域到 IRecordSequence。

public:
 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
Public Function WriteRestartArea (data As IList(Of ArraySegment(Of Byte))) As SequenceNumber

參數

data
IList<ArraySegment<Byte>>

一份將被串接並附加為記錄的位元組陣列區段清單。

傳回

書寫重啟區的序號。

例外狀況

一或多個引數無效。

在寫入重啟區域時發生了 I/O 錯誤。

記錄序列無法產生足夠的空閒空間來容納新的重啟區域。

該方法是在序列被處理後才被呼叫的。

備註

重新啟動區域用於暫時儲存包含用戶端最後檢查點操作的資訊。 當需要復原時,你可以解析重新啟動區域,取得上一次檢查點操作的所有資料。 這些資料會初始化交易表、髒頁表和開啟檔案表,讓它們能用於復原過程。 重新啟動區域可以用此 ReadRestartAreas 方法讀取。

位元組陣列區段中的資料會被串接成一個位元組陣列,作為記錄附加。 當讀取重新啟動區域時,並未提供將資料分割回陣列區段的配置。

適用於

WriteRestartArea(ArraySegment<Byte>, SequenceNumber)

當在衍生類別中覆寫時,會寫入一個重啟區域, IRecordSequence 並更新基底序列號。

public:
 System::IO::Log::SequenceNumber WriteRestartArea(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber newBaseSequenceNumber);
public System.IO.Log.SequenceNumber WriteRestartArea(ArraySegment<byte> data, System.IO.Log.SequenceNumber newBaseSequenceNumber);
abstract member WriteRestartArea : ArraySegment<byte> * System.IO.Log.SequenceNumber -> System.IO.Log.SequenceNumber
Public Function WriteRestartArea (data As ArraySegment(Of Byte), newBaseSequenceNumber As SequenceNumber) As SequenceNumber

參數

data
ArraySegment<Byte>

一份將被串接並附加為記錄的位元組陣列區段清單。

newBaseSequenceNumber
SequenceNumber

新的基序號。 指定的序號必須大於或等於目前的基序序號。

傳回

書寫重啟區的序號。

例外狀況

一或多個引數無效。

在寫入重啟區域時發生了 I/O 錯誤。

記錄序列無法產生足夠的空閒空間來容納新的重啟區域。

該方法是在序列被處理後才被呼叫的。

備註

重新啟動區域用於暫時儲存包含用戶端最後檢查點操作的資訊。 當需要復原時,你可以解析重新啟動區域,取得上一次檢查點操作的所有資料。 這些資料會初始化交易表、髒頁表和開啟檔案表,讓它們能用於復原過程。 重新啟動區域可以用此 ReadRestartAreas 方法讀取。

當重啟區域被寫入時,位元組陣列區段中的資料會串接成單一位元組陣列,作為記錄附加。 當讀取重新啟動區域時,並未提供將資料分割回陣列區段的配置。

當此方法成功完成時,基礎序列號即已更新。 所有序號小於新基序號的日誌記錄都無法存取。

適用於

WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber)

當在衍生類別中覆寫時,會寫入一個重啟區域, IRecordSequence 並更新基底序列號。

public:
 System::IO::Log::SequenceNumber WriteRestartArea(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber newBaseSequenceNumber);
public System.IO.Log.SequenceNumber WriteRestartArea(System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber newBaseSequenceNumber);
abstract member 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)), newBaseSequenceNumber As SequenceNumber) As SequenceNumber

參數

data
IList<ArraySegment<Byte>>

一份將被串接並附加為記錄的位元組陣列區段清單。

newBaseSequenceNumber
SequenceNumber

新的基序號。 指定的序號必須大於或等於目前的基序序號。

傳回

書寫重啟區的序號。

例外狀況

一或多個引數無效。

在寫入重啟區域時發生了 I/O 錯誤。

記錄序列無法產生足夠的空閒空間來容納新的重啟區域。

該方法是在序列被處理後才被呼叫的。

備註

重新啟動區域用於暫時儲存包含用戶端最後檢查點操作的資訊。 當需要復原時,你可以解析重新啟動區域,取得上一次檢查點操作的所有資料。 這些資料會初始化交易表、髒頁表和開啟檔案表,讓它們能用於復原過程。 重新啟動區域可以用此 ReadRestartAreas 方法讀取。

當重啟區域被寫入時,位元組陣列區段中的資料會串接成單一位元組陣列,作為記錄附加。 當讀取重新啟動區域時,並未提供將資料分割回陣列區段的配置。

當此方法成功完成時,基礎序列號即已更新。 所有序號小於新基序號的日誌記錄都無法存取。

適用於

WriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection)

當在衍生類別中覆寫時,會用保留寫入 IRecordSequence restart 區域,並更新基底序號。

public:
 System::IO::Log::SequenceNumber WriteRestartArea(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber newBaseSequenceNumber, System::IO::Log::ReservationCollection ^ reservation);
public System.IO.Log.SequenceNumber WriteRestartArea(ArraySegment<byte> data, System.IO.Log.SequenceNumber newBaseSequenceNumber, System.IO.Log.ReservationCollection reservation);
abstract member WriteRestartArea : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection -> System.IO.Log.SequenceNumber
Public Function WriteRestartArea (data As ArraySegment(Of Byte), newBaseSequenceNumber As SequenceNumber, reservation As ReservationCollection) As SequenceNumber

參數

data
ArraySegment<Byte>

一份將被串接並附加為記錄的位元組陣列區段清單。

newBaseSequenceNumber
SequenceNumber

新的基序號。 指定的序號必須大於或等於目前的基序序號。

reservation
ReservationCollection

ReservationCollection A包含了應該用於這個重啟區域的預留。

傳回

書寫重啟區的序號。

例外狀況

一或多個引數無效。

在寫入重啟區域時發生了 I/O 錯誤。

記錄序列無法產生足夠的空閒空間來容納新的重啟區域。

該方法是在序列被處理後才被呼叫的。

備註

重新啟動區域用於暫時儲存包含用戶端最後檢查點操作的資訊。 當需要復原時,你可以解析重新啟動區域,取得上一次檢查點操作的所有資料。 這些資料會初始化交易表、髒頁表和開啟檔案表,讓它們能用於復原過程。 重新啟動區域可以用此 ReadRestartAreas 方法讀取。

當重啟區域被寫入時,位元組陣列區段中的資料會串接成單一位元組陣列,作為記錄附加。 當讀取重新啟動區域時,並未提供將資料分割回陣列區段的配置。

若指定預留,書面重啟區域將利用先前已保留的空間,使用集合中的預留空間。 若方法成功,將消耗能包含資料的最小保留區,該保留區將從集合中移除。

當此方法成功完成時,基礎序列號即已更新。 所有序號小於新基序號的日誌記錄都無法存取。

如果記錄序列已被處理,或你傳遞了無效參數,則在此操作中會立即拋出例外。 例如,在非同步附加請求期間發生錯誤,例如在 I/O 請求中磁碟故障,當呼叫該 EndReserveAndAppend 方法時會拋出異常。

適用於

WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection)

當在衍生類別中覆寫時,會用保留寫入 IRecordSequence restart 區域,並更新基底序號。

public:
 System::IO::Log::SequenceNumber WriteRestartArea(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber newBaseSequenceNumber, System::IO::Log::ReservationCollection ^ reservation);
public System.IO.Log.SequenceNumber WriteRestartArea(System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber newBaseSequenceNumber, System.IO.Log.ReservationCollection reservation);
abstract member 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)), newBaseSequenceNumber As SequenceNumber, reservation As ReservationCollection) As SequenceNumber

參數

data
IList<ArraySegment<Byte>>

一份將被串接並附加為記錄的位元組陣列區段清單。

newBaseSequenceNumber
SequenceNumber

新的基序號。 指定的序號必須大於或等於目前的基序序號。

reservation
ReservationCollection

ReservationCollection A包含了應該用於這個重啟區域的預留。

傳回

書寫重啟區的序號。

例外狀況

一或多個引數無效。

在寫入重啟區域時發生了 I/O 錯誤。

記錄序列無法產生足夠的空閒空間來容納新的重啟區域。

該方法是在序列被處理後才被呼叫的。

備註

重新啟動區域用於暫時儲存包含用戶端最後檢查點操作的資訊。 當需要復原時,你可以解析重新啟動區域,取得上一次檢查點操作的所有資料。 這些資料會初始化交易表、髒頁表和開啟檔案表,讓它們能用於復原過程。 重新啟動區域可以用此 ReadRestartAreas 方法讀取。

當重啟區域被寫入時,位元組陣列區段中的資料會串接成單一位元組陣列,作為記錄附加。 當讀取重新啟動區域時,並未提供將資料分割回陣列區段的配置。

若指定預留,書面重啟區域將利用先前已保留的空間,使用集合中的預留空間。 若方法成功,將消耗能包含資料的最小保留區,該保留區將從集合中移除。

當此方法成功完成時,基礎序列號即已更新。 所有序號小於新基序號的日誌記錄都無法存取。

如果記錄序列已被處理,或你傳遞了無效參數,則在此操作中會立即拋出例外。 例如,在非同步附加請求期間發生錯誤,例如在 I/O 請求中磁碟故障,當呼叫該 EndReserveAndAppend 方法時會拋出異常。

適用於