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