LogRecordSequence.BeginWriteRestartArea Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Memulai operasi penulisan area hidupkan ulang asinkron.
Overload
BeginWriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection, AsyncCallback, Object) |
Memulai operasi penulisan area hidupkan ulang asinkron, menggunakan ruang yang sebelumnya dicadangkan dalam urutan. Metode ini tidak dapat diwariskan. |
BeginWriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection, AsyncCallback, Object) |
Memulai operasi penulisan area hidupkan ulang asinkron, menggunakan ruang yang sebelumnya dicadangkan dalam urutan. Metode ini tidak dapat diwariskan. |
BeginWriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection, AsyncCallback, Object)
Memulai operasi penulisan area hidupkan ulang asinkron, menggunakan ruang yang sebelumnya dicadangkan dalam urutan. Metode ini tidak dapat diwariskan.
public:
virtual IAsyncResult ^ BeginWriteRestartArea(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber newBaseSeqNum, System::IO::Log::ReservationCollection ^ reservationCollection, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginWriteRestartArea (System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber newBaseSeqNum, System.IO.Log.ReservationCollection reservationCollection, AsyncCallback callback, object state);
abstract member BeginWriteRestartArea : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
override this.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)), newBaseSeqNum As SequenceNumber, reservationCollection As ReservationCollection, callback As AsyncCallback, state As Object) As IAsyncResult
Parameter
- data
- IList<ArraySegment<Byte>>
Daftar segmen array byte yang akan digabungkan dan ditambahkan sebagai rekaman.
- newBaseSeqNum
- SequenceNumber
Nomor urutan dasar baru. Angka urutan yang ditentukan harus lebih besar dari atau sama dengan nomor urutan dasar saat ini.
- reservationCollection
- ReservationCollection
ReservationCollection yang berisi reservasi yang harus digunakan untuk area hidupkan ulang ini.
- callback
- AsyncCallback
Panggilan balik asinkron opsional, yang akan dipanggil ketika penulisan area hidupkan ulang selesai.
- state
- Object
Objek yang disediakan pengguna yang membedakan permintaan tulis area hidupkan ulang asinkron khusus ini dari permintaan lain.
Mengembalikan
Yang IAsyncResult mewakili operasi penulisan area hidupkan ulang asinkron, yang masih bisa tertunda.
Penerapan
Pengecualian
newBaseSeqNum
tidak valid untuk urutan ini.
-atau-
Nomor urutan mulai enumerasi log yang ditentukan tidak valid.
-atau-
data
tidak dapat ditambahkan karena lebih besar dari ukuran rekaman maksimum.
-atau-
reservationCollection
tidak dibuat oleh urutan rekaman ini.
Satu atau beberapa parameter adalah null
.
Ekor arsip baru atau yang sudah ada atau dasar log aktif tidak valid.
-atau-
newBaseSeqNum
bukan antara nomor urutan dasar dan urutan terakhir dari urutan ini.
Permintaan tidak dapat dilakukan karena pengecualian I/O yang tidak terduga.
-atau-
Permintaan tidak dapat dilakukan karena kesalahan perangkat I/O.
Metode ini dipanggil setelah urutan dibuang.
Memori tidak cukup untuk melanjutkan eksekusi program.
Akses untuk urutan log yang ditentukan ditolak oleh sistem operasi.
Urutan rekaman penuh.
Keterangan
Anda harus meneruskan yang IAsyncResult dikembalikan oleh metode ini ke EndWriteRestartArea metode untuk memastikan bahwa operasi penulisan area hidupkan ulang telah selesai dan sumber daya dapat dibebaskan dengan tepat. Jika terjadi kesalahan selama operasi penulisan area hidupkan ulang asinkron, pengecualian tidak dilemparkan sampai EndWriteRestartArea metode dipanggil dengan yang IAsyncResult dikembalikan oleh metode ini.
Data yang terkandung dalam data
parameter akan digabungkan ke dalam array byte tunggal untuk ditambahkan sebagai rekaman. Namun, tidak ada ketentuan yang dibuat untuk memisahkan data kembali ke segmen array saat rekaman dibaca.
Ketika operasi berhasil diselesaikan, nomor urutan dasar telah diperbarui. Semua rekaman log dengan nomor urut kurang dari nomor urutan dasar baru tidak dapat diakses.
ReservationCollection Jika ditentukan, area hidupkan ulang tertulis akan menggunakan ruang yang telah dipesan sebelumnya, menggunakan reservasi yang terkandung dalam koleksi. Jika metode berhasil, metode akan menggunakan reservasi terkecil yang dapat menyimpan data, dan reservasi tersebut akan dihapus dari koleksi.
Jika urutan rekaman telah dibuang, atau jika Anda meneruskan argumen yang tidak valid, pengecualian segera dilemparkan dalam operasi ini. Kesalahan yang terjadi selama permintaan penautan asinkron, misalnya, kegagalan disk selama permintaan I/O, akan mengakibatkan pengecualian dilemparkan ketika EndWriteRestartArea metode dipanggil.
Berlaku untuk
BeginWriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection, AsyncCallback, Object)
Memulai operasi penulisan area hidupkan ulang asinkron, menggunakan ruang yang sebelumnya dicadangkan dalam urutan. Metode ini tidak dapat diwariskan.
public:
virtual IAsyncResult ^ BeginWriteRestartArea(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber newBaseSeqNum, System::IO::Log::ReservationCollection ^ reservation, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginWriteRestartArea (ArraySegment<byte> data, System.IO.Log.SequenceNumber newBaseSeqNum, 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
override this.BeginWriteRestartArea : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginWriteRestartArea (data As ArraySegment(Of Byte), newBaseSeqNum As SequenceNumber, reservation As ReservationCollection, callback As AsyncCallback, state As Object) As IAsyncResult
Parameter
- data
- ArraySegment<Byte>
Segmen array byte yang akan digabungkan dan ditambahkan sebagai rekaman.
- newBaseSeqNum
- SequenceNumber
Nomor urutan dasar baru. Angka urutan yang ditentukan harus lebih besar dari atau sama dengan nomor urutan dasar saat ini.
- reservation
- ReservationCollection
ReservationCollection yang berisi reservasi yang harus digunakan untuk area hidupkan ulang ini.
- callback
- AsyncCallback
Panggilan balik asinkron opsional, yang akan dipanggil ketika penulisan area hidupkan ulang selesai.
- state
- Object
Objek yang disediakan pengguna yang membedakan permintaan tulis area hidupkan ulang asinkron khusus ini dari permintaan lain.
Mengembalikan
Yang IAsyncResult mewakili operasi penulisan area hidupkan ulang asinkron, yang masih bisa tertunda.
Penerapan
Pengecualian
newBaseSeqNum
tidak valid untuk urutan ini.
-atau-
Nomor urutan mulai enumerasi log yang ditentukan tidak valid.
-atau-
data
tidak dapat ditambahkan karena lebih besar dari ukuran rekaman maksimum.
-atau-
reservation
tidak dibuat oleh urutan rekaman ini.
Satu atau beberapa parameter adalah null
.
Ekor arsip baru atau yang sudah ada atau dasar log aktif tidak valid.
-atau-
newBaseSeqNum
bukan antara nomor urutan dasar dan urutan terakhir dari urutan ini.
Permintaan tidak dapat dilakukan karena pengecualian I/O yang tidak terduga.
-atau-
Permintaan tidak dapat dilakukan karena kesalahan perangkat I/O.
Metode ini dipanggil setelah urutan dibuang.
Memori tidak cukup untuk melanjutkan eksekusi program.
Akses untuk urutan log yang ditentukan ditolak oleh sistem operasi.
Urutan rekaman penuh.
Keterangan
Anda harus meneruskan yang IAsyncResult dikembalikan oleh metode ini ke EndWriteRestartArea metode untuk memastikan bahwa operasi penulisan area hidupkan ulang telah selesai dan sumber daya dapat dibebaskan dengan tepat. Jika terjadi kesalahan selama operasi penulisan area hidupkan ulang asinkron, pengecualian tidak dilemparkan sampai EndWriteRestartArea metode dipanggil dengan yang IAsyncResult dikembalikan oleh metode ini.
Data yang terkandung dalam data
parameter akan digabungkan ke dalam array byte tunggal untuk ditambahkan sebagai rekaman. Namun, tidak ada ketentuan yang dibuat untuk memisahkan data kembali ke segmen array saat rekaman dibaca.
Ketika operasi berhasil diselesaikan, nomor urutan dasar telah diperbarui. Semua rekaman log dengan nomor urut kurang dari nomor urutan dasar baru tidak dapat diakses.
ReservationCollection Jika ditentukan, area hidupkan ulang tertulis akan menggunakan ruang yang telah dipesan sebelumnya, menggunakan reservasi yang terkandung dalam koleksi. Jika metode berhasil, metode akan menggunakan reservasi terkecil yang dapat menyimpan data, dan reservasi tersebut akan dihapus dari koleksi.
Jika urutan rekaman telah dibuang, atau jika Anda meneruskan argumen yang tidak valid, pengecualian segera dilemparkan dalam operasi ini. Kesalahan yang terjadi selama permintaan penautan asinkron, misalnya, kegagalan disk selama permintaan I/O, akan mengakibatkan pengecualian dilemparkan ketika EndWriteRestartArea metode dipanggil.