LogRecordSequence.BeginAppend Yöntem

Tanım

Zaman uyumsuz ekleme işlemini başlatır.

Aşırı Yüklemeler

BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object)

Zaman uyumsuz ekleme işlemini başlatır. Bu yöntem devralınamaz.

public:
 virtual IAsyncResult ^ BeginAppend(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber nextUndoRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend(ArraySegment<byte> data, System.IO.Log.SequenceNumber nextUndoRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, AsyncCallback callback, object state);
abstract member BeginAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * AsyncCallback * obj -> IAsyncResult
override this.BeginAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As ArraySegment(Of Byte), nextUndoRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, callback As AsyncCallback, state As Object) As IAsyncResult

Parametreler

data
ArraySegment<Byte>

Birleştirilmiş ve kayıt olarak eklenecek bayt dizisi kesimlerinin listesi.

nextUndoRecord
SequenceNumber

Kullanıcı tarafından belirtilen sırada bir sonraki kaydın sıra numarası.

previousRecord
SequenceNumber

Önceki sırada bir sonraki kaydın sıra numarası.

recordAppendOptions
RecordAppendOptions

Verilerin nasıl yazılması gerektiğini belirten geçerli değeri RecordAppendOptions .

callback
AsyncCallback

Ekleme tamamlandığında çağrılmak üzere isteğe bağlı bir zaman uyumsuz geri çağırma.

state
Object

Bu belirli zaman uyumsuz ekleme isteğini diğer isteklerden ayıran kullanıcı tarafından sağlanan nesne.

Döndürülenler

IAsyncResult Hala beklemede olabilecek zaman uyumsuz eklemeyi temsil eden bir.

Uygulamalar

Özel durumlar

nextUndoRecord veya previousRecord bu dizi için geçerli değil.

-veya-

data en büyük kayıt boyutundan büyük olduğundan eklenemiyor.

-veya-

reservations bu kayıt dizisi tarafından oluşturulmadı.

Bağımsız değişkenlerden biri veya daha fazlası şeklindedir null.

nextUndoRecord veya previousRecord bu dizinin temel ve son sıra numaraları arasında değildir.

İstek beklenmeyen bir G/Ç özel durumu nedeniyle gerçekleştirilemedi.

-veya-

G/Ç cihazı hatası nedeniyle istek gerçekleştirilemedi.

Kayıt dizisi salt okunur erişimle açıldığından işlem gerçekleştirilemiyor.

yöntemi, dizi atıldıktan sonra çağrıldı.

Programın yürütülmesine devam etmek için yeterli bellek yok.

Kayıt dizisi dolu.

Belirtilen günlük dizisine erişim, işletim sistemi tarafından reddedilir.

Açıklamalar

Ekleme işleminin IAsyncResult tamamlanmasını ve kaynakların uygun şekilde serbest kalmasını sağlamak için bu yöntem EndAppend tarafından döndürülen öğesini yöntemine geçirmeniz gerekir. Zaman uyumsuz ekleme sırasında bir hata oluştuysa, yöntemi bu yöntem tarafından döndürülen ile EndAppend çağrılana IAsyncResult kadar bir özel durum oluşmaz.

parametresinde data bulunan veriler, kayıt olarak eklenmek üzere tek bir bayt dizisine birleştirilir. Ancak, kayıt okunduğunda verileri dizi kesimlerine bölmek için herhangi bir sağlama yapılmaz.

Normalde, bu yöntem kayıt yazilmeden önce tamamlar. Bir kaydın yazılmasını sağlamak için parametresini ForceFlush kullanarak recordAppendOptions bayrağını belirtin veya yöntemini çağırın Flush .

Şunlara uygulanır

BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object)

Zaman uyumsuz ekleme işlemini başlatır. Bu yöntem devralınamaz.

public:
 virtual IAsyncResult ^ BeginAppend(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber userRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend(System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber userRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, AsyncCallback callback, object state);
abstract member BeginAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * AsyncCallback * obj -> IAsyncResult
override this.BeginAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As IList(Of ArraySegment(Of Byte)), userRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, callback As AsyncCallback, state As Object) As IAsyncResult

Parametreler

data
IList<ArraySegment<Byte>>

Birleştirilmiş ve kayıt olarak eklenecek bayt dizisi kesimlerinin listesi.

userRecord
SequenceNumber

Kullanıcı tarafından belirtilen sırada bir sonraki kaydın sıra numarası.

previousRecord
SequenceNumber

Önceki sırada bir sonraki kaydın sıra numarası.

recordAppendOptions
RecordAppendOptions

Verilerin nasıl yazılması gerektiğini belirten geçerli değeri RecordAppendOptions .

callback
AsyncCallback

Ekleme tamamlandığında çağrılmak üzere isteğe bağlı bir zaman uyumsuz geri çağırma.

state
Object

Bu belirli zaman uyumsuz ekleme isteğini diğer isteklerden ayıran kullanıcı tarafından sağlanan nesne.

Döndürülenler

IAsyncResult Hala beklemede olabilecek zaman uyumsuz eklemeyi temsil eden bir.

Uygulamalar

Özel durumlar

userRecord veya previousRecord bu dizi için geçerli değil.

-veya-

data en büyük kayıt boyutundan büyük olduğundan eklenemiyor.

-veya-

reservations bu kayıt dizisi tarafından oluşturulmadı.

Bağımsız değişkenlerden biri veya daha fazlası şeklindedir null.

userRecord veya previousRecord bu dizinin temel ve son sıra numaraları arasında değildir.

İstek beklenmeyen bir G/Ç özel durumu nedeniyle gerçekleştirilemedi.

-veya-

G/Ç cihazı hatası nedeniyle istek gerçekleştirilemedi.

Kayıt dizisi salt okunur erişimle açıldığından işlem gerçekleştirilemiyor.

yöntemi, dizi atıldıktan sonra çağrıldı.

Programın yürütülmesine devam etmek için yeterli bellek yok.

Kayıt dizisi dolu.

Belirtilen günlük dizisine erişim, işletim sistemi tarafından reddedilir.

Açıklamalar

Ekleme işleminin IAsyncResult tamamlanmasını ve kaynakların uygun şekilde serbest kalmasını sağlamak için bu yöntem EndAppend tarafından döndürülen öğesini yöntemine geçirmeniz gerekir. Zaman uyumsuz ekleme sırasında bir hata oluştuysa, yöntemi bu yöntem tarafından döndürülen ile EndAppend çağrılana IAsyncResult kadar bir özel durum oluşmaz.

parametresinde data bulunan veriler, kayıt olarak eklenmek üzere tek bir bayt dizisine birleştirilir. Ancak, kayıt okunduğunda verileri dizi kesimlerine bölmek için herhangi bir sağlama yapılmaz.

Normalde, bu yöntem kayıt yazilmeden önce tamamlar. Bir kaydın yazılmasını sağlamak için parametresini ForceFlush kullanarak recordAppendOptions bayrağını belirtin veya yöntemini çağırın Flush .

Şunlara uygulanır

BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object)

Zaman uyumsuz ekleme işlemini başlatır. Bu yöntem devralınamaz.

public:
 virtual IAsyncResult ^ BeginAppend(ArraySegment<System::Byte> data, System::IO::Log::SequenceNumber nextUndoRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, System::IO::Log::ReservationCollection ^ reservations, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend(ArraySegment<byte> data, System.IO.Log.SequenceNumber nextUndoRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, System.IO.Log.ReservationCollection reservations, AsyncCallback callback, object state);
abstract member BeginAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
override this.BeginAppend : ArraySegment<byte> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As ArraySegment(Of Byte), nextUndoRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, reservations As ReservationCollection, callback As AsyncCallback, state As Object) As IAsyncResult

Parametreler

data
ArraySegment<Byte>

Birleştirilmiş ve kayıt olarak eklenecek bayt dizisi kesimlerinin listesi.

nextUndoRecord
SequenceNumber

Kullanıcı tarafından belirtilen sırada bir sonraki kaydın sıra numarası.

previousRecord
SequenceNumber

Önceki sırada bir sonraki kaydın sıra numarası.

recordAppendOptions
RecordAppendOptions

Verilerin nasıl yazılması gerektiğini belirten geçerli değeri RecordAppendOptions .

reservations
ReservationCollection

ReservationCollection Bu kayıt için kullanılması gereken rezervasyonu içeren.

callback
AsyncCallback

Ekleme tamamlandığında çağrılmak üzere isteğe bağlı bir zaman uyumsuz geri çağırma.

state
Object

Bu belirli zaman uyumsuz ekleme isteğini diğer isteklerden ayıran kullanıcı tarafından sağlanan nesne.

Döndürülenler

IAsyncResult Hala beklemede olabilecek zaman uyumsuz eklemeyi temsil eden bir.

Uygulamalar

Özel durumlar

userRecord veya previousRecord bu dizi için geçerli değil.

-veya-

data en büyük kayıt boyutundan büyük olduğundan eklenemiyor.

-veya-

reservations bu kayıt dizisi tarafından oluşturulmadı.

Bağımsız değişkenlerden biri veya daha fazlası şeklindedir null.

userRecord veya previousRecord bu dizinin temel ve son sıra numaraları arasında değildir.

İstek beklenmeyen bir G/Ç özel durumu nedeniyle gerçekleştirilemedi.

-veya-

G/Ç cihazı hatası nedeniyle istek gerçekleştirilemedi.

Kayıt dizisi salt okunur erişimle açıldığından işlem gerçekleştirilemiyor.

yöntemi, dizi atıldıktan sonra çağrıldı.

Programın yürütülmesine devam etmek için yeterli bellek yok.

Kayıt dizisi dolu.

Belirtilen günlük dizisine erişim, işletim sistemi tarafından reddedilir.

içinde sığacak data kadar büyük bir rezervasyon bulunamaz reservations.

Açıklamalar

Ekleme işleminin IAsyncResult tamamlanmasını ve kaynakların uygun şekilde serbest kalmasını sağlamak için bu yöntem EndAppend tarafından döndürülen öğesini yöntemine geçirmeniz gerekir. Zaman uyumsuz ekleme sırasında bir hata oluştuysa, yöntemi bu yöntem tarafından döndürülen ile EndAppend çağrılana IAsyncResult kadar bir özel durum oluşmaz.

parametresinde data bulunan veriler, kayıt olarak eklenmek üzere tek bir bayt dizisine birleştirilir. Ancak, kayıt okunduğunda verileri dizi kesimlerine bölmek için herhangi bir sağlama yapılmaz.

Eklenen kayıt, parametresi tarafından reservations belirtilen ayırmayı kullanarak daha önce ayrılmış olan alanı kullanır. Ekleme başarılı olursa, verileri tutabilecek en küçük rezervasyon alanını kullanır ve bu rezervasyon alanı koleksiyondan kaldırılır.

Normalde, bu yöntem kayıt yazilmeden önce tamamlar. Bir kaydın yazılmasını sağlamak için parametresini ForceFlush kullanarak recordAppendOptions bayrağını belirtin veya yöntemini çağırın Flush .

Şunlara uygulanır

BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object)

Zaman uyumsuz ekleme işlemini başlatır. Bu yöntem devralınamaz.

public:
 virtual IAsyncResult ^ BeginAppend(System::Collections::Generic::IList<ArraySegment<System::Byte>> ^ data, System::IO::Log::SequenceNumber userRecord, System::IO::Log::SequenceNumber previousRecord, System::IO::Log::RecordAppendOptions recordAppendOptions, System::IO::Log::ReservationCollection ^ reservations, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginAppend(System.Collections.Generic.IList<ArraySegment<byte>> data, System.IO.Log.SequenceNumber userRecord, System.IO.Log.SequenceNumber previousRecord, System.IO.Log.RecordAppendOptions recordAppendOptions, System.IO.Log.ReservationCollection reservations, AsyncCallback callback, object state);
abstract member BeginAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
override this.BeginAppend : System.Collections.Generic.IList<ArraySegment<byte>> * System.IO.Log.SequenceNumber * System.IO.Log.SequenceNumber * System.IO.Log.RecordAppendOptions * System.IO.Log.ReservationCollection * AsyncCallback * obj -> IAsyncResult
Public Function BeginAppend (data As IList(Of ArraySegment(Of Byte)), userRecord As SequenceNumber, previousRecord As SequenceNumber, recordAppendOptions As RecordAppendOptions, reservations As ReservationCollection, callback As AsyncCallback, state As Object) As IAsyncResult

Parametreler

data
IList<ArraySegment<Byte>>

Birleştirilmiş ve kayıt olarak eklenecek bayt dizisi kesimlerinin listesi.

userRecord
SequenceNumber

Kullanıcı tarafından belirtilen sırada bir sonraki kaydın sıra numarası.

previousRecord
SequenceNumber

Önceki sırada bir sonraki kaydın sıra numarası.

recordAppendOptions
RecordAppendOptions

Verilerin nasıl yazılması gerektiğini belirten geçerli değeri RecordAppendOptions .

reservations
ReservationCollection

ReservationCollection Bu kayıt için kullanılması gereken rezervasyonu içeren.

callback
AsyncCallback

Ekleme tamamlandığında çağrılmak üzere isteğe bağlı bir zaman uyumsuz geri çağırma.

state
Object

Bu belirli zaman uyumsuz ekleme isteğini diğer isteklerden ayıran kullanıcı tarafından sağlanan nesne.

Döndürülenler

IAsyncResult Hala beklemede olabilecek zaman uyumsuz eklemeyi temsil eden bir.

Uygulamalar

Özel durumlar

userRecord veya previousRecord bu dizi için geçerli değil.

-veya-

data en büyük kayıt boyutundan büyük olduğundan eklenemiyor.

-veya-

reservations bu kayıt dizisi tarafından oluşturulmadı.

Bağımsız değişkenlerden biri veya daha fazlası şeklindedir null.

userRecord veya previousRecord bu dizinin temel ve son sıra numaraları arasında değildir.

İstek beklenmeyen bir G/Ç özel durumu nedeniyle gerçekleştirilemedi.

-veya-

G/Ç cihazı hatası nedeniyle istek gerçekleştirilemedi.

Kayıt dizisi salt okunur erişimle açıldığından işlem gerçekleştirilemiyor.

yöntemi, dizi atıldıktan sonra çağrıldı.

Programın yürütülmesine devam etmek için yeterli bellek yok.

Kayıt dizisi dolu.

Belirtilen günlük dizisine erişim, işletim sistemi tarafından reddedilir.

içinde sığacak data kadar büyük bir rezervasyon bulunamaz reservations.

Açıklamalar

Ekleme işleminin IAsyncResult tamamlanmasını ve kaynakların uygun şekilde serbest kalmasını sağlamak için bu yöntem EndAppend tarafından döndürülen öğesini yöntemine geçirmeniz gerekir. Zaman uyumsuz ekleme sırasında bir hata oluştuysa, yöntemi bu yöntem tarafından döndürülen ile EndAppend çağrılana IAsyncResult kadar bir özel durum oluşmaz.

parametresinde data bulunan veriler, kayıt olarak eklenmek üzere tek bir bayt dizisine birleştirilir. Ancak, kayıt okunduğunda verileri dizi kesimlerine bölmek için herhangi bir sağlama yapılmaz.

Eklenen kayıt, parametresi tarafından reservations belirtilen ayırmayı kullanarak daha önce ayrılmış olan alanı kullanır. Ekleme başarılı olursa, verileri tutabilecek en küçük rezervasyon alanını kullanır ve bu rezervasyon alanı koleksiyondan kaldırılır.

Normalde, bu yöntem kayıt yazilmeden önce tamamlar. Bir kaydın yazılmasını sağlamak için parametresini ForceFlush kullanarak recordAppendOptions bayrağını belirtin veya yöntemini çağırın Flush .

Şunlara uygulanır