none
真郁闷使用WebClient在多线程下TCP/IP只连接一个找到了半天都没解决办法,后来换XMLHttp异步可是循环获得readyState老在1 RRS feed

  • 问题

  • 老大们看看。。。
    刚学习VB.NET 刚才还发错地方了
            http = CreateObject("Msxml2.ServerXMLHTTP.6.0")
            http.open("GET", "http://www.baidu.com", True)
            http.Send()
            Do
                Console.WriteLine(http.readyState)
                System.Threading.Thread.Sleep(200)
            Loop While True
    
    2009年4月1日 0:04

答案

全部回复

  • Do
                Console.WriteLine(http.readyState)
                http.WaitForResponse(1000)
                System.Threading.Thread.Sleep(200)
            Loop While True
    http://feiyun0112.cnblogs.com/
    2009年4月1日 1:34
    版主
  •  

    Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

     

    Dim netr As Net.WebRequest = Net.WebRequest.Create("http://www.baidu.com")

    netr.Method =

    "GET"

    netr.BeginGetResponse(

    AddressOf callbacksub, netr)

     

     

    End Sub

     

     

    Sub callbacksub(ByVal ar As IAsyncResult)

     

    Dim netr As Net.WebRequest = ar.AsyncState

     

    Dim rsp As Net.WebResponse = netr.EndGetResponse(ar)

    MsgBox(rsp.GetResponseStream.Length)

     

    End Sub


    这个是使用  .net  异步访问网站的正规例子


    热烈庆祝进入4星活跃用户队伍
    有原则的回答问题: 不懂的不去装懂,别人回答得很完整的,没有需要补充的不去蹭分。
    • 已标记为答案 FFDY 2009年4月1日 4:05
    • 取消答案标记 FFDY 2009年4月1日 4:05
    2009年4月1日 1:39
  • 谢谢

     

    2009年4月1日 3:37
  • 好像只能开2个TCP/IP
        Sub asdasd(ByVal i)
            Dim netr As Net.WebRequest = Net.WebRequest.Create("http://www.ffdy.cn/" & 12269 - i & ".html")
            netr.Method = "GET"
            netr.BeginGetResponse(AddressOf callbacksub, netr)
        End Sub
        Sub callbacksub(ByVal ar As IAsyncResult)
            Dim netr As Net.WebRequest = ar.AsyncState
            Dim rsp As Net.WebResponse = netr.EndGetResponse(ar)
            Dim netStream As StreamReader
            netStream = New StreamReader(rsp.GetResponseStream)
            'MsgBox(netStream.ReadToEnd)
        End Sub

        Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
            asdasd(1)
            asdasd(2)
            asdasd(3)
            asdasd(4)
            asdasd(5)
        End Sub

    2009年4月1日 4:09
  • asdasd放到多线程执行
    http://feiyun0112.cnblogs.com/
    2009年4月1日 4:12
    版主
  • ServicePointManager.DefaultConnectionLimit = 100
    是要设置这个东东
    快速速度反映不理想
    看了任务管理器里面的联网本地连接开启了程序就到100KB 就掉到0了 等好久才出现网页代码
    2009年4月1日 4:45
  • 兄弟

    你是不是用的winform   用 console看看


    热烈庆祝进入4星活跃用户队伍
    有原则的回答问题: 不懂的不去装懂,别人回答得很完整的,没有需要补充的不去蹭分。
    2009年4月1日 7:45