LogRecordSequence.WriteRestartArea 方法
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
將重新啟動區域寫入 LogRecordSequence。
多載
WriteRestartArea(ArraySegment<Byte>) |
將重新啟動區域寫入 LogRecordSequence。 這個方法無法被繼承。 |
WriteRestartArea(IList<ArraySegment<Byte>>) |
將重新啟動區域寫入 LogRecordSequence。 這個方法無法被繼承。 |
WriteRestartArea(ArraySegment<Byte>, SequenceNumber) |
將重新啟動區域寫入 LogRecordSequence,並更新基底序號。 這個方法無法被繼承。 |
WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber) |
將重新啟動區域寫入 LogRecordSequence,並更新基底序號。 這個方法無法被繼承。 |
WriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection) |
使用保留區將重新啟動區域寫入 LogRecordSequence,並更新基底序號。 這個方法無法被繼承。 |
WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection) |
使用保留區將重新啟動區域寫入 LogRecordSequence,並更新基底序號。 這個方法無法被繼承。 |
備註
重新啟動區域可用來暫時儲存包含用戶端上一個檢查點作業的資訊。 一般記錄檔系統 (CLFS) 會維護兩個重新啟動區域,以保證至少有一個有效區域永遠可供使用。 當需要復原時,CLFS 會讀取其重新啟動區域,以及上一個檢查點作業傳回的所有資料。 這些資料會初始化交易資料表、中途分頁資料表和開啟檔案資料表,好讓它們可用於復原程序。
您可以使用 ReadRestartAreas 方法來讀取重新啟動區域。
WriteRestartArea(ArraySegment<Byte>)
將重新啟動區域寫入 LogRecordSequence。 這個方法無法被繼承。
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
參數
- data
- ArraySegment<Byte>
即將串連並附加成記錄的陣列區段。
傳回
寫入之重新啟動區域的序號。
實作
例外狀況
一或多個引數無效。
寫入重新啟動區域時發生 I/O 錯誤。
記錄順序無法騰出足夠的可用空間來容納新的重新啟動區域。
已在處置序列之後呼叫此方法。
一或多個引數為 null
。
存取指定的記錄順序遭作業系統拒絕。
沒有足夠的記憶體可以繼續執行程式。
備註
重新啟動區域可用來暫時儲存包含用戶端上一個檢查點作業的資訊。 一般記錄檔系統 (CLFS) 會維護兩個重新啟動區域,以保證至少有一個有效區域永遠可供使用。 當需要復原時,CLFS 會讀取其重新啟動區域,以及上一個檢查點作業傳回的所有資料。 這些資料會初始化交易資料表、中途分頁資料表和開啟檔案資料表,好讓它們可用於復原程序。
您可以使用 ReadRestartAreas 方法來讀取重新啟動區域。
位元組陣列區段中的資料將串連至單一位元組陣列中,以便附加成記錄。 在讀取重新啟動區域時,不會將資料分割回陣列區段。
適用於
WriteRestartArea(IList<ArraySegment<Byte>>)
將重新啟動區域寫入 LogRecordSequence。 這個方法無法被繼承。
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
參數
- data
- IList<ArraySegment<Byte>>
即將串連並附加成記錄之位元組陣列區段的清單。
傳回
寫入之重新啟動區域的序號。
實作
例外狀況
一或多個引數無效。
寫入重新啟動區域時發生 I/O 錯誤。
記錄順序無法騰出足夠的可用空間來容納新的重新啟動區域。
已在處置序列之後呼叫此方法。
一或多個引數為 null
。
存取指定的記錄順序遭作業系統拒絕。
沒有足夠的記憶體可以繼續執行程式。
備註
重新啟動區域可用來暫時儲存包含用戶端上一個檢查點作業的資訊。 一般記錄檔系統 (CLFS) 會維護兩個重新啟動區域,以保證至少有一個有效區域永遠可供使用。 當需要復原時,CLFS 會讀取其重新啟動區域,以及上一個檢查點作業傳回的所有資料。 這些資料會初始化交易資料表、中途分頁資料表和開啟檔案資料表,好讓它們可用於復原程序。
您可以使用 ReadRestartAreas 方法來讀取重新啟動區域。
位元組陣列區段中的資料將串連至單一位元組陣列中,以便附加成記錄。 在讀取重新啟動區域時,不會將資料分割回陣列區段。
適用於
WriteRestartArea(ArraySegment<Byte>, SequenceNumber)
將重新啟動區域寫入 LogRecordSequence,並更新基底序號。 這個方法無法被繼承。
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
參數
- data
- ArraySegment<Byte>
即將串連並附加成記錄之位元組陣列區段的清單。
- newBaseSeqNum
- SequenceNumber
新的基底序號。 指定的序號必須大於或等於目前基底序號。
傳回
寫入之重新啟動區域的序號。
實作
例外狀況
一或多個引數無效。
寫入重新啟動區域時發生 I/O 錯誤。
記錄順序無法騰出足夠的可用空間來容納新的重新啟動區域。
已在處置序列之後呼叫此方法。
備註
重新啟動區域可用來暫時儲存包含用戶端上一個檢查點作業的資訊。 一般記錄檔系統 (CLFS) 會維護兩個重新啟動區域,以保證至少有一個有效區域永遠可供使用。 當需要復原時,CLFS 會讀取其重新啟動區域,以及上一個檢查點作業傳回的所有資料。 這些資料會初始化交易資料表、中途分頁資料表和開啟檔案資料表,好讓它們可用於復原程序。
您可以使用 ReadRestartAreas 方法來讀取重新啟動區域。
當寫入重新啟動區域時,位元組陣列區段中的資料會串連至單一位元組陣列,以便附加為記錄。 在讀取重新啟動區域時,不會將資料分割回陣列區段。
當這個方法成功完成時,基底序號已經更新。 只要是序號小於新基底序號的所有記錄都無法存取。
如果處置了記錄順序,或是您傳遞了無效的引數,就會立即在此作業中擲回例外狀況。 在非同步附加要求期間發生的錯誤 (例如,在 I/O 要求期間發生的磁碟錯誤) 會導致在呼叫 EndReserveAndAppend 方法時擲回例外狀況。
適用於
WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber)
將重新啟動區域寫入 LogRecordSequence,並更新基底序號。 這個方法無法被繼承。
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
參數
- data
- IList<ArraySegment<Byte>>
即將串連並附加成記錄之位元組陣列區段的清單。
- newBaseSeqNum
- SequenceNumber
新的基底序號。 指定的序號必須大於或等於目前基底序號。
傳回
寫入之重新啟動區域的序號。
實作
例外狀況
一或多個引數無效。
寫入重新啟動區域時發生 I/O 錯誤。
記錄順序無法騰出足夠的可用空間來容納新的重新啟動區域。
已在處置序列之後呼叫此方法。
備註
重新啟動區域可用來暫時儲存包含用戶端上一個檢查點作業的資訊。 一般記錄檔系統 (CLFS) 會維護兩個重新啟動區域,以保證至少有一個有效區域永遠可供使用。 當需要復原時,CLFS 會讀取其重新啟動區域,以及上一個檢查點作業傳回的所有資料。 這些資料會初始化交易資料表、中途分頁資料表和開啟檔案資料表,好讓它們可用於復原程序。
您可以使用 ReadRestartAreas 方法來讀取重新啟動區域。
當寫入重新啟動區域時,位元組陣列區段中的資料會串連至單一位元組陣列,以便附加為記錄。 在讀取重新啟動區域時,不會將資料分割回陣列區段。
當這個方法成功完成時,基底序號已經更新。 只要是序號小於新基底序號的所有記錄都無法存取。
如果處置了記錄順序,或是您傳遞了無效的引數,就會立即在此作業中擲回例外狀況。 在非同步附加要求期間發生的錯誤 (例如,在 I/O 要求期間發生的磁碟錯誤) 會導致在呼叫 EndReserveAndAppend 方法時擲回例外狀況。
適用於
WriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection)
使用保留區將重新啟動區域寫入 LogRecordSequence,並更新基底序號。 這個方法無法被繼承。
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
參數
- data
- ArraySegment<Byte>
即將串連並附加成記錄之位元組陣列區段的清單。
- newBaseSeqNum
- SequenceNumber
新的基底序號。 指定的序號必須大於或等於目前基底序號。
- reservations
- ReservationCollection
ReservationCollection,其中包含此重新啟動區域所應使用的保留區。
傳回
寫入之重新啟動區域的序號。
實作
例外狀況
一或多個引數無效。
寫入重新啟動區域時發生 I/O 錯誤。
記錄順序無法騰出足夠的可用空間來容納新的重新啟動區域。
已在處置序列之後呼叫此方法。
備註
重新啟動區域可用來暫時儲存包含用戶端上一個檢查點作業的資訊。 一般記錄檔系統 (CLFS) 會維護兩個重新啟動區域,以保證至少有一個有效區域永遠可供使用。 當需要復原時,CLFS 會讀取其重新啟動區域,以及上一個檢查點作業傳回的所有資料。 這些資料會初始化交易資料表、中途分頁資料表和開啟檔案資料表,好讓它們可用於復原程序。
您可以使用 ReadRestartAreas 方法來讀取重新啟動區域。
當寫入重新啟動區域時,位元組陣列區段中的資料會串連至單一位元組陣列,以便附加為記錄。 在讀取重新啟動區域時,不會將資料分割回陣列區段。
如果已指定保留區,寫入的重新啟動區域將會使用包含在集合中的保留區,以取用先前所保留的空間。 如果此方法成功,便會取用可以容納資料的最小保留區,而且該保留區將會從集合移除。
當這個方法成功完成時,基底序號已經更新。 只要是序號小於新基底序號的所有記錄都無法存取。
如果處置了記錄順序,或是您傳遞了無效的引數,就會立即在此作業中擲回例外狀況。 在非同步附加要求期間發生的錯誤 (例如,在 I/O 要求期間發生的磁碟錯誤) 會導致在呼叫 EndReserveAndAppend 方法時擲回例外狀況。
適用於
WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection)
使用保留區將重新啟動區域寫入 LogRecordSequence,並更新基底序號。 這個方法無法被繼承。
public:
virtual System::IO::Log::SequenceNumber WriteRestartArea(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber newBaseSeqNum, System::IO::Log::ReservationCollection ^ reservationCollection);
public System.IO.Log.SequenceNumber WriteRestartArea (System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber newBaseSeqNum, System.IO.Log.ReservationCollection reservationCollection);
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, reservationCollection As ReservationCollection) As SequenceNumber
參數
- data
- IList<ArraySegment<Byte>>
即將串連並附加成記錄之位元組陣列區段的清單。
- newBaseSeqNum
- SequenceNumber
新的基底序號。 指定的序號必須大於或等於目前基底序號。
- reservationCollection
- ReservationCollection
ReservationCollection,其中包含此重新啟動區域所應使用的保留區。
傳回
寫入之重新啟動區域的序號。
實作
例外狀況
newBaseSeqNum
對此順序無效。
-或-
指定的記錄列舉起始序號無效。
-或-
無法附加 data
,因為它已超過記錄大小上限。
-或-
reservationCollection
不是由此記錄順序所建立。
一或多個參數為 null
。
已在處置序列之後呼叫此方法。
沒有足夠的記憶體可以繼續執行程式。
存取指定的記錄順序遭作業系統拒絕。
記錄順序已滿。
備註
重新啟動區域可用來暫時儲存包含用戶端上一個檢查點作業的資訊。 一般記錄檔系統 (CLFS) 會維護兩個重新啟動區域,以保證至少有一個有效區域永遠可供使用。 當需要復原時,CLFS 會讀取其重新啟動區域,以及上一個檢查點作業傳回的所有資料。 這些資料會初始化交易資料表、中途分頁資料表和開啟檔案資料表,好讓它們可用於復原程序。
您可以使用 ReadRestartAreas 方法來讀取重新啟動區域。
當寫入重新啟動區域時,位元組陣列區段中的資料會串連至單一位元組陣列,以便附加為記錄。 在讀取重新啟動區域時,不會將資料分割回陣列區段。
如果已指定保留區,寫入的重新啟動區域將會使用包含在集合中的保留區,以取用先前所保留的空間。 如果此方法成功,便會取用可以容納資料的最小保留區,而且該保留區將會從集合移除。
當這個方法成功完成時,基底序號已經更新。 只要是序號小於新基底序號的所有記錄都無法存取。
如果處置了記錄順序,或是您傳遞了無效的引數,就會立即在此作業中擲回例外狀況。 在非同步附加要求期間發生的錯誤 (例如,在 I/O 要求期間發生的磁碟錯誤) 會導致在呼叫 EndReserveAndAppend 方法時擲回例外狀況。