IRecordSequence Antarmuka
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.
Menyediakan antarmuka generik ke urutan rekaman.
public interface class IRecordSequence : IDisposable
public interface IRecordSequence : IDisposable
type IRecordSequence = interface
interface IDisposable
Public Interface IRecordSequence
Implements IDisposable
- Turunan
- Penerapan
Keterangan
Antarmuka IRecordSequence menyediakan antarmuka abstrak ke aliran berorientasi rekaman. IRecordSequence Instans dapat digunakan untuk membaca dan menulis rekaman log.
Antarmuka menyediakan IRecordSequence kemampuan berikut,
Tambahkan rekaman log menggunakan Append metode .
Baca rekaman yang ditambahkan menggunakan ReadLogRecords metode .
Tulis rekaman hidupkan ulang khusus menggunakan WriteRestartArea metode .
Baca menghidupkan ulang rekaman dari rekaman hidupkan ulang yang terakhir ditulis menggunakan ReadRestartAreas metode .
Bersihkan rekaman ke penyimpanan tahan lama menggunakan Flush metode .
Cadangkan ruang untuk menambahkan rekaman.
Kosongkan ruang log dengan memajukan basis log.
Terima TailPinned pemberitahuan peristiwa untuk memindahkan dasar log ke ruang kosong.
Rekaman log ditambahkan ke IRecordSequence instans, dan setiap rekaman log diberi nomor urutan yang unik. Angka urutan meningkat secara monoton dalam urutan rekaman tertentu. Catatan log terdiri dari data buram, disediakan ke IRecordSequence instans dalam IList ArraySegments byte.
Antarmuka ini IRecordSequence juga mengekspos beberapa properti dasar yang menyediakan informasi tentang batas log.
Properti BaseSequenceNumber berisi nomor urut rekaman valid pertama dalam urutan rekaman.
Properti LastSequenceNumber berisi nomor urut yang dijamin lebih besar dari jumlah urutan rekaman terakhir yang ditambahkan.
Properti RestartSequenceNumber berisi nomor urut dari area hidupkan ulang terakhir yang ditulis.
Properti MaximumRecordLength berisi ukuran rekaman terbesar yang dapat ditambahkan ke, atau dibaca dari urutan.
Properti ReservedBytes berisi ukuran total semua reservasi yang dibuat dalam urutan catatan ini.
RetryAppend Jika properti diatur ke
true, dan Append operasi gagal karena tidak ada ruang dalam urutan, urutan rekaman akan mencoba membebaskan ruang, dan mencoba kembali operasi Tambahkan.
Properti
| Nama | Deskripsi |
|---|---|
| BaseSequenceNumber |
Ketika ditimpa dalam kelas turunan, mendapatkan nomor urut rekaman valid pertama di saat ini IRecordSequence. |
| LastSequenceNumber |
Ketika ditimpa dalam kelas turunan, mendapatkan nomor urut yang lebih besar dari catatan terakhir yang ditambahkan. |
| MaximumRecordLength |
Ketika ditimpa di kelas turunan, mendapatkan ukuran rekaman terbesar yang dapat ditambahkan ke atau dibaca dari urutan ini, dalam byte. |
| ReservedBytes |
Ketika ditimpa dalam kelas turunan, mendapatkan jumlah total byte yang telah dicadangkan. |
| RestartSequenceNumber |
Ketika ditimpa di kelas turunan, mendapatkan nomor urut dari area hidupkan ulang yang terakhir ditulis. |
| RetryAppend |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah penambung secara otomatis dicoba kembali jika log penuh. |
Metode
| Nama | Deskripsi |
|---|---|
| AdvanceBaseSequenceNumber(SequenceNumber) |
Memindahkan nomor urutan dasar log ke depan. |
| Append(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection) |
Ketika ditimpa dalam kelas turunan, menambahkan catatan log ke IRecordSequence, menggunakan ruang yang sebelumnya dipesan dalam urutan. |
| Append(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions) |
Ketika ditimpa di kelas turunan, menulis catatan log ke IRecordSequence. |
| Append(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection) |
Ketika ditimpa dalam kelas turunan, menambahkan catatan log ke IRecordSequence, menggunakan ruang yang sebelumnya dipesan dalam urutan. |
| Append(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions) |
Ketika ditimpa di kelas turunan, menambahkan catatan log ke IRecordSequence. |
| BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object) |
Ketika ditimpa di kelas turunan, memulai operasi tambahan asinkron. |
| BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object) |
Ketika ditimpa di kelas turunan, memulai operasi tambahan asinkron menggunakan ruang yang sebelumnya dicadangkan dalam urutan. |
| BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object) |
Ketika ditimpa di kelas turunan, memulai operasi tambahan asinkron, menggunakan ruang yang sebelumnya dicadangkan dalam urutan. |
| BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object) |
Ketika ditimpa di kelas turunan, memulai operasi tambahan asinkron, menggunakan ruang yang sebelumnya dicadangkan dalam urutan. |
| BeginFlush(SequenceNumber, AsyncCallback, Object) |
Ketika ditimpa di kelas turunan, memulai operasi flush asinkron, menggunakan ruang yang sebelumnya dicadangkan dalam urutan. |
| BeginReserveAndAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[], AsyncCallback, Object) |
Ketika ditimpa di kelas turunan, memulai operasi cadangan dan penambung asinkron. |
| BeginReserveAndAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[], AsyncCallback, Object) |
Ketika ditimpa di kelas turunan, memulai operasi cadangan dan penambung asinkron. |
| BeginWriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection, AsyncCallback, Object) |
Ketika ditimpa dalam kelas turunan, memulai operasi penulisan area mulai ulang asinkron, menggunakan ruang yang sebelumnya dicadangkan dalam urutan. |
| BeginWriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection, AsyncCallback, Object) |
Ketika ditimpa dalam kelas turunan, memulai operasi penulisan area mulai ulang asinkron, menggunakan ruang yang sebelumnya dicadangkan dalam urutan. |
| CreateReservationCollection() |
Ketika ditimpa di kelas turunan, membuat baru ReservationCollection. |
| Dispose() |
Melakukan tugas yang ditentukan aplikasi yang terkait dengan membebaskan, merilis, atau mengatur ulang sumber daya yang tidak dikelola. (Diperoleh dari IDisposable) |
| EndAppend(IAsyncResult) |
Ketika ditimpa di kelas turunan, mengakhiri operasi penampakan asinkron. |
| EndFlush(IAsyncResult) |
Ketika ditimpa di kelas turunan, mengakhiri operasi flush asinkron. |
| EndReserveAndAppend(IAsyncResult) |
Ketika ditimpa di kelas turunan, mengakhiri operasi cadangan dan penambung asinkron. |
| EndWriteRestartArea(IAsyncResult) |
Ketika ditimpa di kelas turunan, mengakhiri operasi penulisan area hidupkan ulang asinkron. |
| Flush() |
Ketika ditimpa dalam kelas turunan, memastikan bahwa semua catatan yang ditambahkan telah ditulis. |
| Flush(SequenceNumber) |
Ketika ditimpa dalam kelas turunan, memastikan bahwa semua rekaman yang ditambahkan hingga dan termasuk rekaman dengan nomor urutan yang ditentukan telah ditulis dengan durably. |
| ReadLogRecords(SequenceNumber, LogRecordEnumeratorType) |
Saat ditimpa dalam kelas turunan, mengembalikan kumpulan rekaman yang dapat dihitung dalam urutan. |
| ReadRestartAreas() |
Saat ditimpa di kelas turunan, mengembalikan kumpulan area hidupkan ulang yang dapat dihitung dalam urutan. |
| ReserveAndAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[]) |
Ketika ditimpa di kelas turunan, secara otomatis membuat satu reservasi dan menambahkan catatan ke urutan. |
| ReserveAndAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, Int64[]) |
Ketika ditimpa di kelas turunan, secara otomatis membuat satu reservasi dan menambahkan catatan ke urutan. |
| WriteRestartArea(ArraySegment<Byte>, SequenceNumber, ReservationCollection) |
Saat ditimpa di kelas turunan, menulis area hidupkan ulang ke IRecordSequence menggunakan reservasi, dan memperbarui nomor urutan dasar. |
| WriteRestartArea(ArraySegment<Byte>, SequenceNumber) |
Ketika ditimpa di kelas turunan, menulis area hidupkan ulang ke IRecordSequence dan memperbarui nomor urutan dasar. |
| WriteRestartArea(ArraySegment<Byte>) |
Ketika ditimpa di kelas turunan, menulis area hidupkan ulang ke IRecordSequence. |
| WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber, ReservationCollection) |
Saat ditimpa di kelas turunan, menulis area hidupkan ulang ke IRecordSequence menggunakan reservasi, dan memperbarui nomor urutan dasar. |
| WriteRestartArea(IList<ArraySegment<Byte>>, SequenceNumber) |
Ketika ditimpa di kelas turunan, menulis area hidupkan ulang ke IRecordSequence dan memperbarui nomor urutan dasar. |
| WriteRestartArea(IList<ArraySegment<Byte>>) |
Ketika ditimpa di kelas turunan, menulis area hidupkan ulang ke IRecordSequence. |
Acara
| Nama | Deskripsi |
|---|---|
| TailPinned |
Terjadi ketika urutan rekaman menentukan bahwa ekor harus dipindahkan ke depan. |