У меня есть код, который повторяет несколько 100 URL-адресов и запрашивает данные из Интернета.
Это выглядит примерно так
for each url in urls
Dim hwr = CType(WebRequest.Create(url), HttpWebRequest)
Dim rq = New ReqArgs
rq.Url= url
rq.Request = hwr
Dim res =
hwr.BeginGetResponse(New AsyncCallback(AddressOf FinishWebRequest), rq)
Dim a = 1
next
Выглядит ли это нормально?
Почему линия BeginGetresponse
занимает около 2-3 секунд, прежде чем перейти к dim a=1
?.
На самом деле я отладил и вижу, что FinishWebRequest
процедура полностью выполняется до достижения Dim a=1
.
Так что же это за асинхронный?в любое время с помощью асинхронного.я?Или есть другой способ сделать это?
Дело в том, что основной саб должен отработать 300 запросов и вернуть управление в пользовательский интерфейс, тогда FinishWebRequest
должен обрабатывать их медленно в своем собственном потоке и самостоятельно.время, когда поступают запросы.
Как мне это сделать?
Кстати, основной саб работает в BackgroundWorker
, но я проверил без BackgroundWorker
ипроблема та же
Кажется, что ответ должен быть здесь , но он просто не работает для меня
Я WPF 4.0
Ценю вашпомощь и совет.Спасибо