Получение истекшего времени асинхронного запроса - PullRequest
1 голос
/ 15 ноября 2011

Я пытаюсь получить истекшее время во время асинхронного запроса, но у меня есть время, которое полностью отличается от времени проволочной сетки.

Это действительно странно, потому что я делаю то же самое с пулом синхронных запросов, и у меня есть время проволочек.

Это мой код:

    public void getResponseAsync()
    {
        RequestState rs = new RequestState();
        rs.Request = this.webRequest;  //On ajoute la requete dans l'objet état pour pouvoir le récupérer dans la callback
        this.timerAsync.Restart();
        IAsyncResult ar = rs.Request.BeginGetResponse(new AsyncCallback(this.ResponseCallback), rs);      // Appel asynchrone
    }

    public void ResponseCallback(IAsyncResult ar)
    {
        RequestState rs = (RequestState)ar.AsyncState;  //Récupération de l'objet etat 
        HttpWebRequest req = rs.Request;                //Récupération de la requete web (object HttpWebRequest)
        try //Récupération de la réponse Web    
        {
            HttpWebResponse resp = (HttpWebResponse)req.EndGetResponse(ar);
            this.timerAsync.Stop();
            this.timeAsync = this.timerAsync.ElapsedMilliseconds;
            ...
            ...
         }
    }

Значение this.timeAsync далеко от значения Wireshark.

Я что-то не так сделал?

Спасибо за вашу помощь.

1 Ответ

0 голосов
/ 15 ноября 2011

Вы уверены, что есть только один вызов getResponseAsync ()?Чтобы быть уверенным, добавьте точку останова на getResponseAsync.

Несколько вызовов getResponseAsync сбросят ваш таймер.

...