CommunicationObject.BeginClose Metodo

Definizione

Consente di iniziare un'operazione asincrona finalizzata a chiudere un oggetto di comunicazione.Begins an asynchronous operation to close a communication object.

Overload

BeginClose(AsyncCallback, Object)

Consente di iniziare un'operazione asincrona finalizzata a chiudere un oggetto di comunicazione.Begins an asynchronous operation to close a communication object.

BeginClose(TimeSpan, AsyncCallback, Object)

Consente di iniziare un'operazione asincrona finalizzata a chiudere un oggetto di comunicazione entro un determinato intervallo di tempo.Begins an asynchronous operation to close a communication object with a specified timeout.

BeginClose(AsyncCallback, Object)

Consente di iniziare un'operazione asincrona finalizzata a chiudere un oggetto di comunicazione.Begins an asynchronous operation to close a communication object.

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

Parametri

callback
AsyncCallback

Delegato AsyncCallback che riceve la notifica del completamento dell'operazione di chiusura asincrona.The AsyncCallback delegate that receives notification of the completion of the asynchronous close operation.

state
Object

Un oggetto, specificato dall'applicazione, che contiene le informazioni di stato associate all'operazione di chiusura asincrona.An object, specified by the application, that contains state information associated with the asynchronous close operation.

Restituisce

Interfaccia IAsyncResult che fa riferimento all'operazione di chiusura asincrona.The IAsyncResult that references the asynchronous close operation.

Implementazioni

Eccezioni

L'oggetto di comunicazione non si trova in uno stato Opened o Opening e non può essere modificato.The communication object is not in a Opened or Opening state and cannot be modified.

L'oggetto di comunicazione si trova in uno stato Closing o Closed e non può essere modificato.The communication object is in a Closing or Closed state and cannot be modified.

L'oggetto di comunicazione si trova in uno stato Faulted e non può essere modificato.The communication object is in a Faulted state and cannot be modified.

L'intervallo di tempo predefinito assegnato per l'operazione è stato superato prima del completamento dell'operazione.The default interval of time that was allotted for the operation was exceeded before the operation was completed.

Commenti

Questo metodo determina la corretta transizione dell'oggetto CommunicationObject da qualsiasi stato diverso da Closed allo stato Closed entro un intervallo di tempo predefinito.This method causes the CommunicationObject to gracefully transition from any state, other than the Closed state, into the Closed state within a default interval of time. Il metodo BeginClose consente il completamento di qualsiasi operazione non terminata prima della restituzione.The BeginClose method allows any unfinished work to be completed before returning. Ad esempio, tale metodo consente di completare l'invio di tutti i messaggi memorizzati nel buffer.For example, finish sending any buffered messages). Questo metodo chiama OnBeginOpen(TimeSpan, AsyncCallback, Object) se l'oggetto di comunicazione si trovava inizialmente nello stato Opened.This method calls OnBeginOpen(TimeSpan, AsyncCallback, Object) if the communication object was initially in the Opened state.

BeginClose(TimeSpan, AsyncCallback, Object)

Consente di iniziare un'operazione asincrona finalizzata a chiudere un oggetto di comunicazione entro un determinato intervallo di tempo.Begins an asynchronous operation to close a communication object with a specified timeout.

public:
 virtual IAsyncResult ^ BeginClose(TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginClose (TimeSpan timeout, AsyncCallback callback, object state);
abstract member BeginClose : TimeSpan * AsyncCallback * obj -> IAsyncResult
override this.BeginClose : TimeSpan * AsyncCallback * obj -> IAsyncResult
Public Function BeginClose (timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult

Parametri

timeout
TimeSpan

Intervallo di tempo TimeSpan entro il quale l'operazione di chiusura deve essere completata prima di scadere.The TimeSpan that specifies how long the close operation has to complete before timing out.

callback
AsyncCallback

Delegato AsyncCallback che riceve la notifica del completamento dell'operazione di chiusura asincrona.The AsyncCallback delegate that receives notification of the completion of the asynchronous close operation.

state
Object

Un oggetto, specificato dall'applicazione, che contiene le informazioni di stato associate all'operazione di chiusura asincrona.An object, specified by the application, that contains state information associated with the asynchronous close operation.

Restituisce

Interfaccia IAsyncResult che fa riferimento all'operazione di chiusura asincrona.The IAsyncResult that references the asynchronous close operation.

Implementazioni

Eccezioni

L'oggetto di comunicazione non si trova in uno stato Opened o Opening e non può essere modificato.The communication object is not in a Opened or Opening state and cannot be modified.

L'oggetto di comunicazione si trova in uno stato Closing o Closed e non può essere modificato.The communication object is in a Closing or Closed state and cannot be modified.

L'oggetto di comunicazione si trova in uno stato Faulted e non può essere modificato.The communication object is in a Faulted state and cannot be modified.

L'intervallo di tempo predefinito assegnato per l'operazione è stato superato prima del completamento dell'operazione.The default interval of time that was allotted for the operation was exceeded before the operation was completed.

Commenti

Questo metodo determina la corretta transizione dell'oggetto CommunicationObject da qualsiasi stato diverso da Closed allo stato Closed entro un intervallo di tempo specificato.This method causes the CommunicationObject to gracefully transition from any state, other than the Closed state, into the Closed state with in a specified interval of time. Il metodo BeginClose consente il completamento di qualsiasi operazione non terminata prima della restituzione.The BeginClose method allows any unfinished work to be completed before returning. Ad esempio, tale metodo consente di completare l'invio di tutti i messaggi memorizzati nel buffer.For example, finish sending any buffered messages). Questo metodo chiama OnBeginClose(TimeSpan, AsyncCallback, Object) se l'oggetto di comunicazione si trovava inizialmente nello stato Opened.This method calls OnBeginClose(TimeSpan, AsyncCallback, Object) if the communication object was initially in the Opened state.

Si applica a