Попадание в исключение «Произошла одна или несколько ошибок».Совокупное исключение - PullRequest
0 голосов
/ 29 января 2019

Я использую параллельный.foreach в своем коде, чтобы отправить несколько URL для моего приложения.Первоначально он работал нормально, но через несколько дней я заметил, что это исключение встречается часто.Я гуглил это много часов, но мне не повезло.

Объяснение: У нас есть система Api SMS, с которой клиент отправляет нам смс, а мы отправляем операторам на громкость.У меня есть 10 URL для отправки конкретному оператору Файл остановится через несколько секунд с этой ошибкой.Сообщение об исключении: произошла одна или несколько ошибок.

Ниже приведен мой фрагмент кода.

Parallel.ForEach (urlList, Sub (состояние, строка, индекс)

  If urlList(index).Sender.ToString = "" Then
      urlList(index).response = "ignore"
  Else
      urlList(index).response = SendHttpRequest(state.url.ToString)
  End If

  urlList(index).url = state.url

End Sub)

и ниже - другая функция, которая отправляет HTTP-запрос.

Public Function SendHttpRequest(ByVal url As String) As String
    Dim responsetext As String = ""
    Try
        Dim webR As WebRequest = HttpWebRequest.Create(url)
        webR.Timeout = 40000
        Dim WebResponse As HttpWebResponse = TryCast(webR.GetResponse(), HttpWebResponse)
        Dim stream As Stream = WebResponse.GetResponseStream()
        Dim reader As New StreamReader(stream)
        responsetext = reader.ReadToEnd()
    Catch ex As Exception
        responsetext = ex.ToString() & vbCrLf
    End Try
    Return responsetext
End Function
...