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, который ссылается на асинхронную операцию закрытия.
Исключения
Метод 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, который ссылается на асинхронную операцию закрытия.
Исключения
Метод BeginClose(TimeSpan, AsyncCallback, Object) вызван для объекта, находящегося в состоянии Faulted.
Заданное время ожидания истекло до верного закрытия ICommunicationObject.
Комментарии
Этот метод приводит к корректному ICommunicationObject переходу из любого состояния, кроме Opened состояния в Closed состояние с заданным интервалом времени. Метод BeginClose позволяет завершить всю незавершенную работу перед возвратом. Например, завершить отправку всех сообщений, находящихся в буфере.