我在我的代码中使用 parallel.foreach 为我的应用程序提交多个 url。最初它工作正常,但几天后我注意到这个异常经常发生。我用谷歌搜索了好几个小时,但对我来说没有运气。
说明:我们有 Api SMS 系统,客户从那里向我们提交短信,我们向运营商提交群发短信。我有 10 个 URL 提交给特定的操作员文件在几秒钟后停止,出现此错误。异常消息:出现一个或多个错误。
下面是我的一段代码。
Parallel.ForEach(urlList, Sub(state, line, index)
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
结束子)
以下是提交 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