IReplyChannel.BeginWaitForRequest(TimeSpan, AsyncCallback, Object) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
지정된 시간 제한 및 연결된 상태 개체가 있는 비동기 요청 작업을 시작합니다.
public:
IAsyncResult ^ BeginWaitForRequest(TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginWaitForRequest (TimeSpan timeout, AsyncCallback callback, object state);
abstract member BeginWaitForRequest : TimeSpan * AsyncCallback * obj -> IAsyncResult
Public Function BeginWaitForRequest (timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult
매개 변수
- callback
- AsyncCallback
비동기 요청 수신 작업 완료에 대한 알림을 받는 AsyncCallback 대리자입니다.
- state
- Object
애플리케이션에 의해 지정되는 개체로, 비동기 요청 수신 작업과 연결된 상태 정보를 포함합니다.
반환
요청 메시지의 도착을 대기하기 위해 비동기 작업을 참조하는 IAsyncResult입니다.
예제
다음 코드에서는 이 메서드를 구현하는 방법을 보여 줍니다.
public IAsyncResult BeginWaitForRequest(TimeSpan timeout, AsyncCallback callback, object state)
{
return this.InnerChannel.BeginWaitForRequest(timeout, callback, state);
}
설명
요청 메시지가 큐에 도착할 때까지 대기하는 동안 현재 스레드를 차단할 수 있는 경우 동기 WaitForRequest(TimeSpan) 메서드를 사용합니다. 지정된 timeout
까지 스레드가 차단됩니다.
이 메서드는 콜백을 통해 해당 작업의 이벤트 처리기 ID에 대한 알림을 수신합니다. 채널에서 요청 메시지를 사용할 수 있거나 시간 초과가 발생할 때까지 작업이 완료되지 않습니다.
구현자 참고
지정된 false
이 초과된 경우 작업에서 timeout
가 반환됩니다.