Помогите разобраться,пожалуйста:
Вызываю некую функцию асинхронно.
Хочу ,чтоб максимум время ожидания обработки запроса было
Как сделать чтоб ,если функция отрабатывает раньше ожидания ,то ожидание прерывалось?
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");