textfile1.txt

来自「编程环境VB.NET2005 多线程下载」· 文本 代码 · 共 42 行

TXT
42
字号
    Sub DoDownload()
        Dim ns As System.IO.Stream = Nothing : Dim request As Net.HttpWebRequest
        Dim fs As New IO.FileStream(Me.m_filename, System.IO.FileMode.Open, IO.FileAccess.Write, IO.FileShare.ReadWrite)
        Dim b(bufferSize - 1) As Byte : Dim ret As Integer
        Try
            request = CType(Net.HttpWebRequest.Create(Me.m_url), Net.HttpWebRequest)
            '接收的起始位置及接收的长度
            request.AddRange(CInt(Me.m_nowPos), CInt(Me.m_endPos))
            ns = request.GetResponse.GetResponseStream
            fs.Seek(Me.m_nowPos, IO.SeekOrigin.Begin)
            ret = ns.Read(b, 0, bufferSize)
            While ret > 0
                If Me.m_stop = True Then Exit While
                fs.Write(b, 0, ret)
                'If Me.clearSpeedSum = False Then
                '    Me.m_speed = +ret
                'Else
                '    Me.clearSpeedSum = False  '已重设 
                '    Me.m_speed = 0
                'End If
                Me.m_speed += ret
                Me.m_nowPos += ret
                While speedlimit
                    System.Threading.Thread.Sleep(10)
                    'Debug.WriteLine("正在休眠")
                    If Me.m_stop = True Then Exit While
                End While
                'System.Threading.Thread.Sleep(10)
                ret = ns.Read(b, 0, bufferSize)
            End While
            Me.m_speed = 0
            fs.Close()
            ns.Close()
            RaiseEvent thStop(Me, Me.MyThreadData)
        Catch ex As Exception
            MessageBox.Show("abc" & ex.Message)
        Finally
            fs.Close()
            ns.Close()
        End Try
    End Sub

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?