先看一下代码。
Private Sub bgwLoad_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles bgwLoad.DoWork
Try
Dim SettingTxt() As String = File.ReadAllLines(SettingFileName)
UserName = SettingTxt(0)
UserPassword = SettingTxt(1)
ServerKey = SettingTxt(2)
'这里对数据进行DES加密
Dim EncodeData As String = UserName & SplitText & ServerKey
EncodeData = Encrypt(EncodeData)
EncodeData = HttpUtility.UrlEncode(EncodeData)
Debug.Print(EncodeData)
Using client As WebClient = New WebClient()
Dim myQueryStringCollection As New Specialized.NameValueCollection()
myQueryStringCollection.Add("key", EncodeData)
client.QueryString = myQueryStringCollection
Dim reply As String = client.DownloadString(URL_1)
If reply.Trim = "1" Then
LoadOK = True
Else
dlgSetting.ShowDialog()
End If
End Using
Catch ex As Exception
LoadOK = False
End Try
End Sub
我用单独一个线程执行上面的东东。
可是经常到了Dim reply As String = client.DownloadString(URL_1)这里就会超时,而且十次有九次都是超时。即使成功了也是很慢。
我用浏览器直接访问速度相当快。目前可以排除网络速度问题。
为什么用WebClient 就这么慢呢?是我哪里写错了吗?
欢迎到我的博客一起讨论 http://www.raymanzhai.com