ICommunicationObject.BeginClose Метод

Определение

Начинает асинхронную операцию закрытия объекта связи.

Перегрузки

BeginClose(AsyncCallback, Object)

Начинает асинхронную операцию закрытия объекта связи.

BeginClose(TimeSpan, AsyncCallback, Object)

Начинает асинхронную операцию закрытия объекта связи с заданным временем ожидания.

Комментарии

Этот метод вызывает ICommunicationObject корректное переход от Opened состояния к состоянию Closed .

Имеются версии с явно заданным временем ожидания и без него.

BeginClose(AsyncCallback, Object)

Начинает асинхронную операцию закрытия объекта связи.

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

Параметры

callback
AsyncCallback

Делегат AsyncCallback, принимающий уведомление о завершении асинхронной операции закрытия.

state
Object

Задаваемый приложением объект, который содержит сведения о состоянии, связанные с асинхронной операцией закрытия.

Возвращаемое значение

IAsyncResult

Объект IAsyncResult, который ссылается на асинхронную операцию закрытия.

Исключения

Метод BeginClose(AsyncCallback, Object) вызван для объекта, находящегося в состоянии Faulted.

Время ожидания по умолчанию истекло до верного закрытия ICommunicationObject.

Комментарии

Этот метод приводит к корректному ICommunicationObject переходу от любого состояния, кроме Opened состояния в Closed состояние. Метод BeginClose позволяет завершить всю незавершенную работу перед возвратом. Например, завершить отправку всех сообщений, находящихся в буфере.

Применяется к

BeginClose(TimeSpan, AsyncCallback, Object)

Начинает асинхронную операцию закрытия объекта связи с заданным временем ожидания.

public:
 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
Public Function BeginClose (timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult

Параметры

timeout
TimeSpan

Значение TimeSpan, указывающее время, выделенное для завершения операции отправки до истечения времени ожидания.

callback
AsyncCallback

Делегат AsyncCallback, принимающий уведомление о завершении асинхронной операции закрытия.

state
Object

Задаваемый приложением объект, который содержит сведения о состоянии, связанные с асинхронной операцией закрытия.

Возвращаемое значение

IAsyncResult

Объект IAsyncResult, который ссылается на асинхронную операцию закрытия.

Исключения

Метод BeginClose(TimeSpan, AsyncCallback, Object) вызван для объекта, находящегося в состоянии Faulted.

Заданное время ожидания истекло до верного закрытия ICommunicationObject.

Комментарии

Этот метод приводит к корректному ICommunicationObject переходу из любого состояния, кроме Opened состояния в Closed состояние с заданным интервалом времени. Метод BeginClose позволяет завершить всю незавершенную работу перед возвратом. Например, завершить отправку всех сообщений, находящихся в буфере.

Применяется к