Bagikan melalui


LogRecordSequence.BeginFlush(SequenceNumber, AsyncCallback, Object) Metode

Definisi

Memulai operasi flush asinkron, menggunakan ruang yang sebelumnya dicadangkan dalam urutan. Metode ini tidak dapat diwariskan.

public:
 virtual IAsyncResult ^ BeginFlush(System::IO::Log::SequenceNumber sequenceNumber, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginFlush (System.IO.Log.SequenceNumber sequenceNumber, AsyncCallback callback, object state);
abstract member BeginFlush : System.IO.Log.SequenceNumber * AsyncCallback * obj -> IAsyncResult
override this.BeginFlush : System.IO.Log.SequenceNumber * AsyncCallback * obj -> IAsyncResult
Public Function BeginFlush (sequenceNumber As SequenceNumber, callback As AsyncCallback, state As Object) As IAsyncResult

Parameter

sequenceNumber
SequenceNumber

Nomor urut rekaman terbaru yang harus ditulis. Jika ini SequenceNumber tidak valid, semua rekaman harus ditulis.

callback
AsyncCallback

Panggilan balik asinkron opsional, yang akan dipanggil ketika flush selesai.

state
Object

Objek yang disediakan pengguna yang membedakan permintaan flush asinkron khusus ini dari permintaan lain.

Mengembalikan

Yang IAsyncResult mewakili operasi flush asinkron, yang masih bisa tertunda.

Penerapan

Pengecualian

sequenceNumber tidak valid untuk urutan ini.

sequenceNumber bukan antara nomor urutan dasar dan urutan terakhir dari urutan ini.

Permintaan tidak dapat dilakukan karena pengecualian I/O yang tidak terduga.

Log yang ditentukan tidak memiliki jangkauan apa pun. Satu atau beberapa jangkauan harus dibuat sebelum urutan rekaman dapat digunakan.

Operasi tidak dapat dilakukan karena urutan rekaman dibuka dengan akses baca-saja.

Metode ini dipanggil setelah urutan dibuang.

Memori tidak cukup untuk melanjutkan eksekusi program.

Urutan rekaman penuh.

Akses untuk urutan log yang ditentukan ditolak oleh sistem operasi.

Keterangan

Anda harus meneruskan yang IAsyncResult dikembalikan oleh metode saat ini ke EndFlush metode untuk memastikan bahwa flush selesai dan sumber daya dibebaskan dengan tepat. Jika terjadi kesalahan selama flush asinkron, pengecualian tidak dilemparkan sampai EndFlush metode dipanggil dengan yang IAsyncResult dikembalikan oleh metode ini.

Memanggil metode ini memastikan bahwa semua catatan yang telah ditambahkan ke LogRecordSequence ditulis dengan tahan lama.

Jika urutan rekaman telah dibuang, atau jika Anda meneruskan argumen yang tidak valid, pengecualian segera dilemparkan dalam operasi ini. Kesalahan yang terjadi selama permintaan flush asinkron, misalnya, kegagalan disk selama permintaan I/O, akan mengakibatkan pengecualian dilemparkan ketika EndFlush metode dipanggil.

Berlaku untuk