LogRecordSequence.BeginAppend Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Avvia un'operazione di accodamento asincrona.
Overload
BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object) |
Avvia un'operazione di accodamento asincrona. Questo metodo non può essere ereditato. |
BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object) |
Avvia un'operazione di accodamento asincrona. Questo metodo non può essere ereditato. |
BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object) |
Avvia un'operazione di accodamento asincrona. Questo metodo non può essere ereditato. |
BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object) |
Avvia un'operazione di accodamento asincrona. Questo metodo non può essere ereditato. |
BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object)
Avvia un'operazione di accodamento asincrona. Questo metodo non può essere ereditato.
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
Parametri
- data
- ArraySegment<Byte>
Elenco di segmenti della matrice di byte che verranno concatenati e accodati come record.
- nextUndoRecord
- SequenceNumber
Numero di sequenza del record successivo nell'ordine specificato dall'utente.
- previousRecord
- SequenceNumber
Numero di sequenza del record successivo nell'ordine Precedente.
- recordAppendOptions
- RecordAppendOptions
Valore valido di RecordAppendOptions che specifica la modalità da utilizzare per la scrittura dei dati.
- callback
- AsyncCallback
Callback asincrono facoltativo, da chiamare quando l'accodamento è completo.
- state
- Object
Oggetto fornito dall'utente che distingue questa specifica richiesta di accodamento asincrona dalle altre richieste.
Restituisce
IAsyncResult che rappresenta l'operazione di accodamento asincrona che può essere ancora in sospeso.
Implementazioni
Eccezioni
nextUndoRecord
o previousRecord
non è valido per questa sequenza.
-oppure-
Non è possibile aggiungere data
perché le dimensioni superano le dimensioni massime dei record.
-oppure-
reservations
non è stato creato da questa sequenza di record.
Uno o più argomenti sono null
.
nextUndoRecord
o previousRecord
non è compreso tra i numeri di sequenza di base e finale di questa sequenza.
Impossibile eseguire la richiesta a causa di un'eccezione I/O imprevista.
-oppure-
Impossibile eseguire la richiesta a causa di un errore del dispositivo di I/O.
L'operazione non può essere eseguita perché la sequenza di record è stata aperta con accesso in sola lettura.
Il metodo è stato chiamato dopo l'eliminazione sequenza.
Memoria insufficiente per continuare l'esecuzione del programma.
Sequenza di record piena.
L'accesso per la sequenza dei log specificata viene negato dal sistema operativo.
Commenti
È necessario passare l'oggetto della classe IAsyncResult restituito da questo metodo al metodo EndAppend per garantire che l'operazione di accodamento sia stata completata e che sia possibile liberare appropriatamente le risorse. Se si è verificato un errore durante un accodamento asincrono, non viene generata alcuna eccezione fino a quando il metodo EndAppend non viene chiamato con l'interfaccia IAsyncResult restituita da questo metodo.
I dati contenuti nel parametro data
verranno concatenati in una matrice a byte singolo per essere quindi accodati come record. Tuttavia, non esiste alcun provisioning per suddividere dati in segmenti della matrice una volta letto il record.
In genere questo metodo viene completato prima che il record sia stato scritto. Per garantire che un record è stato scritto, specificare il flag ForceFlush utilizzando il parametro recordAppendOptions
oppure chiamare il metodo Flush.
Si applica a
BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, AsyncCallback, Object)
Avvia un'operazione di accodamento asincrona. Questo metodo non può essere ereditato.
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
Parametri
- data
- IList<ArraySegment<Byte>>
Elenco di segmenti della matrice di byte che verranno concatenati e accodati come record.
- userRecord
- SequenceNumber
Numero di sequenza del record successivo nell'ordine specificato dall'utente.
- previousRecord
- SequenceNumber
Numero di sequenza del record successivo nell'ordine Precedente.
- recordAppendOptions
- RecordAppendOptions
Valore valido di RecordAppendOptions che specifica la modalità da utilizzare per la scrittura dei dati.
- callback
- AsyncCallback
Callback asincrono facoltativo, da chiamare quando l'accodamento è completo.
- state
- Object
Oggetto fornito dall'utente che distingue questa specifica richiesta di accodamento asincrona dalle altre richieste.
Restituisce
IAsyncResult che rappresenta l'operazione di accodamento asincrona che può essere ancora in sospeso.
Implementazioni
Eccezioni
userRecord
o previousRecord
non è valido per questa sequenza.
-oppure-
Non è possibile aggiungere data
perché le dimensioni superano le dimensioni massime dei record.
-oppure-
reservations
non è stato creato da questa sequenza di record.
Uno o più argomenti sono null
.
userRecord
o previousRecord
non è compreso tra i numeri di sequenza di base e finale di questa sequenza.
Impossibile eseguire la richiesta a causa di un'eccezione I/O imprevista.
-oppure-
Impossibile eseguire la richiesta a causa di un errore del dispositivo di I/O.
L'operazione non può essere eseguita perché la sequenza di record è stata aperta con accesso in sola lettura.
Il metodo è stato chiamato dopo l'eliminazione sequenza.
Memoria insufficiente per continuare l'esecuzione del programma.
Sequenza di record piena.
L'accesso per la sequenza dei log specificata viene negato dal sistema operativo.
Commenti
È necessario passare l'oggetto della classe IAsyncResult restituito da questo metodo al metodo EndAppend per garantire che l'operazione di accodamento sia stata completata e che sia possibile liberare appropriatamente le risorse. Se si è verificato un errore durante un accodamento asincrono, non viene generata alcuna eccezione fino a quando il metodo EndAppend non viene chiamato con l'interfaccia IAsyncResult restituita da questo metodo.
I dati contenuti nel parametro data
verranno concatenati in una matrice a byte singolo per essere quindi accodati come record. Tuttavia, non esiste alcun provisioning per suddividere dati in segmenti della matrice una volta letto il record.
In genere questo metodo viene completato prima che il record sia stato scritto. Per garantire che un record è stato scritto, specificare il flag ForceFlush utilizzando il parametro recordAppendOptions
oppure chiamare il metodo Flush.
Si applica a
BeginAppend(ArraySegment<Byte>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object)
Avvia un'operazione di accodamento asincrona. Questo metodo non può essere ereditato.
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
Parametri
- data
- ArraySegment<Byte>
Elenco di segmenti della matrice di byte che verranno concatenati e accodati come record.
- nextUndoRecord
- SequenceNumber
Numero di sequenza del record successivo nell'ordine specificato dall'utente.
- previousRecord
- SequenceNumber
Numero di sequenza del record successivo nell'ordine Precedente.
- recordAppendOptions
- RecordAppendOptions
Valore valido di RecordAppendOptions che specifica la modalità da utilizzare per la scrittura dei dati.
- reservations
- ReservationCollection
Classe ReservationCollection contenente la prenotazione da utilizzare per questo record.
- callback
- AsyncCallback
Callback asincrono facoltativo, da chiamare quando l'accodamento è completo.
- state
- Object
Oggetto fornito dall'utente che distingue questa specifica richiesta di accodamento asincrona dalle altre richieste.
Restituisce
IAsyncResult che rappresenta l'operazione di accodamento asincrona che può essere ancora in sospeso.
Implementazioni
Eccezioni
userRecord
o previousRecord
non è valido per questa sequenza.
-oppure-
Non è possibile aggiungere data
perché le dimensioni superano le dimensioni massime dei record.
-oppure-
reservations
non è stato creato da questa sequenza di record.
Uno o più argomenti sono null
.
userRecord
o previousRecord
non è compreso tra i numeri di sequenza di base e finale di questa sequenza.
Impossibile eseguire la richiesta a causa di un'eccezione I/O imprevista.
-oppure-
Impossibile eseguire la richiesta a causa di un errore del dispositivo di I/O.
L'operazione non può essere eseguita perché la sequenza di record è stata aperta con accesso in sola lettura.
Il metodo è stato chiamato dopo l'eliminazione sequenza.
Memoria insufficiente per continuare l'esecuzione del programma.
Sequenza di record piena.
L'accesso per la sequenza dei log specificata viene negato dal sistema operativo.
Impossibile trovare una prenotazione abbastanza grande da soddisfare il parametro data
in reservations
.
Commenti
È necessario passare l'oggetto della classe IAsyncResult restituito da questo metodo al metodo EndAppend per garantire che l'operazione di accodamento sia stata completata e che sia possibile liberare appropriatamente le risorse. Se si è verificato un errore durante un accodamento asincrono, non viene generata alcuna eccezione fino a quando il metodo EndAppend non viene chiamato con l'interfaccia IAsyncResult restituita da questo metodo.
I dati contenuti nel parametro data
verranno concatenati in una matrice a byte singolo per essere quindi accodati come record. Tuttavia, non esiste alcun provisioning per suddividere dati in segmenti della matrice una volta letto il record.
Il record accodato utilizzerà spazio precedentemente riservato, utilizzando una prenotazione specificata dal parametro reservations
. Se l'accodamento riesce, utilizzerà la più piccola area della prenotazione che può contenere i dati e quell'area sarà rimossa dalla raccolta.
In genere questo metodo viene completato prima che il record sia stato scritto. Per garantire che un record è stato scritto, specificare il flag ForceFlush utilizzando il parametro recordAppendOptions
oppure chiamare il metodo Flush.
Si applica a
BeginAppend(IList<ArraySegment<Byte>>, SequenceNumber, SequenceNumber, RecordAppendOptions, ReservationCollection, AsyncCallback, Object)
Avvia un'operazione di accodamento asincrona. Questo metodo non può essere ereditato.
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
Parametri
- data
- IList<ArraySegment<Byte>>
Elenco di segmenti della matrice di byte che verranno concatenati e accodati come record.
- userRecord
- SequenceNumber
Numero di sequenza del record successivo nell'ordine specificato dall'utente.
- previousRecord
- SequenceNumber
Numero di sequenza del record successivo nell'ordine Precedente.
- recordAppendOptions
- RecordAppendOptions
Valore valido di RecordAppendOptions che specifica la modalità da utilizzare per la scrittura dei dati.
- reservations
- ReservationCollection
Classe ReservationCollection contenente la prenotazione da utilizzare per questo record.
- callback
- AsyncCallback
Callback asincrono facoltativo, da chiamare quando l'accodamento è completo.
- state
- Object
Oggetto fornito dall'utente che distingue questa specifica richiesta di accodamento asincrona dalle altre richieste.
Restituisce
IAsyncResult che rappresenta l'operazione di accodamento asincrona che può essere ancora in sospeso.
Implementazioni
Eccezioni
userRecord
o previousRecord
non è valido per questa sequenza.
-oppure-
Non è possibile aggiungere data
perché le dimensioni superano le dimensioni massime dei record.
-oppure-
reservations
non è stato creato da questa sequenza di record.
Uno o più argomenti sono null
.
userRecord
o previousRecord
non è compreso tra i numeri di sequenza di base e finale di questa sequenza.
Impossibile eseguire la richiesta a causa di un'eccezione I/O imprevista.
-oppure-
Impossibile eseguire la richiesta a causa di un errore del dispositivo di I/O.
L'operazione non può essere eseguita perché la sequenza di record è stata aperta con accesso in sola lettura.
Il metodo è stato chiamato dopo l'eliminazione sequenza.
Memoria insufficiente per continuare l'esecuzione del programma.
Sequenza di record piena.
L'accesso per la sequenza dei log specificata viene negato dal sistema operativo.
Impossibile trovare una prenotazione abbastanza grande da soddisfare il parametro data
in reservations
.
Commenti
È necessario passare l'oggetto della classe IAsyncResult restituito da questo metodo al metodo EndAppend per garantire che l'operazione di accodamento sia stata completata e che sia possibile liberare appropriatamente le risorse. Se si è verificato un errore durante un accodamento asincrono, non viene generata alcuna eccezione fino a quando il metodo EndAppend non viene chiamato con l'interfaccia IAsyncResult restituita da questo metodo.
I dati contenuti nel parametro data
verranno concatenati in una matrice a byte singolo per essere quindi accodati come record. Tuttavia, non esiste alcun provisioning per suddividere dati in segmenti della matrice una volta letto il record.
Il record accodato utilizzerà spazio precedentemente riservato, utilizzando una prenotazione specificata dal parametro reservations
. Se l'accodamento riesce, utilizzerà la più piccola area della prenotazione che può contenere i dati e quell'area sarà rimossa dalla raccolta.
In genere questo metodo viene completato prima che il record sia stato scritto. Per garantire che un record è stato scritto, specificare il flag ForceFlush utilizzando il parametro recordAppendOptions
oppure chiamare il metodo Flush.