IRecordSequence.BeginWriteRestartArea Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Po zastąpieniu klasy pochodnej rozpoczyna asynchroniczną operację zapisu obszaru ponownego uruchamiania.
Przeciążenia
BeginWriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection, AsyncCallback, Object) |
Po zastąpieniu w klasie pochodnej rozpoczyna asynchroniczną operację zapisu obszaru ponownego uruchamiania przy użyciu miejsca zarezerwowanego wcześniej w sekwencji. |
BeginWriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection, AsyncCallback, Object) |
Po zastąpieniu w klasie pochodnej rozpoczyna asynchroniczną operację zapisu obszaru ponownego uruchamiania przy użyciu miejsca zarezerwowanego wcześniej w sekwencji. |
BeginWriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection, AsyncCallback, Object)
Po zastąpieniu w klasie pochodnej rozpoczyna asynchroniczną operację zapisu obszaru ponownego uruchamiania przy użyciu miejsca zarezerwowanego wcześniej w sekwencji.
public:
IAsyncResult ^ BeginWriteRestartArea(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber newBaseSequenceNumber, System::IO::Log::ReservationCollection ^ reservation, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginWriteRestartArea (ArraySegment<byte> data, System.IO.Log.SequenceNumber newBaseSequenceNumber, System.IO.Log.ReservationCollection reservation, AsyncCallback callback, object state);
abstract member BeginWriteRestartArea : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginWriteRestartArea (data As ArraySegment(Of Byte), newBaseSequenceNumber As SequenceNumber, reservation As ReservationCollection, callback As AsyncCallback, state As Object) As IAsyncResult
Parametry
- data
- ArraySegment<Byte>
Lista segmentów tablic bajtowych, które będą łączone i dołączane jako rekord.
- newBaseSequenceNumber
- SequenceNumber
Nowy numer sekwencji podstawowej. Określony numer sekwencji musi być większy lub równy bieżącemu numerowi sekwencji bazowej.
- reservation
- ReservationCollection
Element ReservationCollection zawierający rezerwację, która powinna być używana dla tego obszaru ponownego uruchamiania.
- callback
- AsyncCallback
Opcjonalne wywołanie zwrotne asynchroniczne, które ma być wywoływane po zakończeniu zapisu obszaru ponownego uruchamiania.
- state
- Object
Obiekt udostępniony przez użytkownika, który rozróżnia ten konkretny asynchroniczny żądanie zapisu obszaru ponownego uruchamiania z innych żądań.
Zwraca
Element IAsyncResult reprezentujący asynchroniczną operację zapisu obszaru ponownego uruchamiania, która nadal może być oczekująca.
Uwagi
Należy przekazać wartość zwróconą IAsyncResult przez tę metodę do EndWriteRestartArea metody, aby upewnić się, że operacja zapisu obszaru ponownego uruchomienia została ukończona, a zasoby można zwolnić odpowiednio. Jeśli wystąpił błąd podczas asynchronicznej operacji zapisu obszaru ponownego uruchamiania, wyjątek nie zostanie zgłoszony, dopóki EndWriteRestartArea metoda nie zostanie wywołana przy użyciu metody zwróconej IAsyncResult przez tę metodę.
Dane zawarte w parametrze data
będą łączone w jedną tablicę bajtów do dołączania jako rekordu. Jednak podczas odczytywania rekordu nie jest wprowadzana żadna aprowizacja dzielenia danych z powrotem na segmenty tablic.
Po pomyślnym zakończeniu operacji numer sekwencji podstawowej został zaktualizowany. Wszystkie rekordy dziennika z numerami sekwencji mniejszymi niż nowy numer sekwencji podstawowej są niedostępne.
Jeśli zostanie ReservationCollection określony, zapisany obszar ponownego uruchamiania będzie zużywać miejsce, które zostało wcześniej zarezerwowane, przy użyciu rezerwacji zawartej w kolekcji. Jeśli metoda powiedzie się, będzie korzystać z najmniejszej rezerwacji, która może przechowywać dane, a rezerwacja zostanie usunięta z kolekcji.
Jeśli sekwencja rekordów została usunięta lub jeśli przekazano nieprawidłowy argument, wyjątki są zgłaszane natychmiast w ramach tej operacji. Błędy, które wystąpiły podczas asynchronicznego żądania dołączania, na przykład błąd dysku podczas żądania we/wy, spowoduje zgłaszanie wyjątków po EndWriteRestartArea wywołaniu metody.
Dotyczy
BeginWriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection, AsyncCallback, Object)
Po zastąpieniu w klasie pochodnej rozpoczyna asynchroniczną operację zapisu obszaru ponownego uruchamiania przy użyciu miejsca zarezerwowanego wcześniej w sekwencji.
public:
IAsyncResult ^ BeginWriteRestartArea(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber newBaseSequenceNumber, System::IO::Log::ReservationCollection ^ reservation, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginWriteRestartArea (System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber newBaseSequenceNumber, System.IO.Log.ReservationCollection reservation, AsyncCallback callback, object state);
abstract member BeginWriteRestartArea : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginWriteRestartArea (data As IList(Of ArraySegment(Of Byte)), newBaseSequenceNumber As SequenceNumber, reservation As ReservationCollection, callback As AsyncCallback, state As Object) As IAsyncResult
Parametry
- data
- IList<ArraySegment<Byte>>
Lista segmentów tablic bajtowych, które będą łączone i dołączane jako rekord.
- newBaseSequenceNumber
- SequenceNumber
Nowy numer sekwencji podstawowej. Określony numer sekwencji musi być większy lub równy bieżącemu numerowi sekwencji bazowej.
- reservation
- ReservationCollection
Element ReservationCollection zawierający rezerwację, która powinna być używana dla tego obszaru ponownego uruchamiania.
- callback
- AsyncCallback
Opcjonalne wywołanie zwrotne asynchroniczne, które ma być wywoływane po zakończeniu zapisu obszaru ponownego uruchamiania.
- state
- Object
Obiekt udostępniony przez użytkownika, który rozróżnia ten konkretny asynchroniczny żądanie zapisu obszaru ponownego uruchamiania z innych żądań.
Zwraca
Element IAsyncResult reprezentujący asynchroniczną operację zapisu obszaru ponownego uruchamiania, która nadal może być oczekująca.
Wyjątki
Co najmniej jeden argument jest nieprawidłowy.
Wystąpił błąd we/wy podczas zapisywania obszaru ponownego uruchamiania.
Sekwencja rekordów nie może mieć wystarczającej ilości wolnego miejsca, aby zawierała nowy rekord.
Metoda została wywołana po usunięciu sekwencji.
Uwagi
Należy przekazać wartość zwróconą IAsyncResult przez tę metodę do EndWriteRestartArea metody, aby upewnić się, że operacja zapisu obszaru ponownego uruchomienia została ukończona, a zasoby można zwolnić odpowiednio. Jeśli wystąpił błąd podczas asynchronicznej operacji zapisu obszaru ponownego uruchamiania, wyjątek nie zostanie zgłoszony, dopóki EndWriteRestartArea metoda nie zostanie wywołana przy użyciu metody zwróconej IAsyncResult przez tę metodę.
Dane zawarte w parametrze data
będą łączone w jedną tablicę bajtów do dołączania jako rekordu. Jednak podczas odczytywania rekordu nie jest wprowadzana żadna aprowizacja dzielenia danych z powrotem na segmenty tablic.
Po pomyślnym zakończeniu operacji numer sekwencji podstawowej został zaktualizowany. Wszystkie rekordy dziennika z numerami sekwencji mniejszymi niż nowy numer sekwencji podstawowej są niedostępne.
Jeśli zostanie ReservationCollection określony, zapisany obszar ponownego uruchamiania będzie zużywać miejsce, które zostało wcześniej zarezerwowane, przy użyciu rezerwacji zawartej w kolekcji. Jeśli metoda powiedzie się, będzie korzystać z najmniejszej rezerwacji, która może przechowywać dane, a rezerwacja zostanie usunięta z kolekcji.
Jeśli sekwencja rekordów została usunięta lub jeśli przekazano nieprawidłowy argument, wyjątki są zgłaszane natychmiast w ramach tej operacji. Błędy, które wystąpiły podczas asynchronicznego żądania dołączania, na przykład błąd dysku podczas żądania we/wy, spowoduje zgłaszanie wyjątków po EndWriteRestartArea wywołaniu metody.