IAsyncResult.IsCompleted , WaitOne ,Timeout

Lenutza
Дата: 08.07.2014 18:00:51
Помогите разобраться,пожалуйста:

Вызываю некую функцию асинхронно.
Хочу ,чтоб максимум время ожидания обработки запроса было
Как сделать чтоб ,если функция отрабатывает раньше ожидания ,то ожидание прерывалось?

RetrivePartnerMethod objRetrivePartnerMethod = new RetrivePartnerMethod(objRetrievePartnerWS.RequestResponseService);
                 IAsyncResult objAsyncResult = objRetrivePartnerMethod.BeginInvoke(objPartnerRequest, objESbrequest, out objESbresponse, null, null);
                 mobjLogger.Debug("RetrievePartnerAsync Start");
                 if (!objAsyncResult.IsCompleted)
                 {
                    do
                     {
                         mobjLogger.Debug("RetrievePartnerWS WaitOne");
                         objAsyncResult.AsyncWaitHandle.WaitOne(intWSTimeout, true);
                     }
                     while (!objAsyncResult.IsCompleted);
                    
                     if (!objAsyncResult.IsCompleted)
                         {
                             mobjLogger.Debug("RetrievePartnerWS Timeout expired");
                             return;
                             // throw new ApplicationException("Timeout");
                         }
                     mobjLogger.Debug("RetrievePartnerWS IsCompleted");
Lenutza
Дата: 08.07.2014 19:17:18
Lenutza,

Уже не надо ,разобралась