Foxtable(狐表)用户栏目专家坐堂 → [求助]如何避免执行FTP多个任务,项目卡死的情况


  共有2706人关注过本帖树形打印复制链接

主题:[求助]如何避免执行FTP多个任务,项目卡死的情况

帅哥哟,离线,有人找我吗?
黄训良
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1100 积分:8985 威望:0 精华:0 注册:2014/3/15 14:36:00
[求助]如何避免执行FTP多个任务,项目卡死的情况  发帖心情 Post By:2015/11/18 16:36:00 [只看该作者]

如何避免执行FTP多个任务,项目卡死的情况,类似下载工具那样的功能!

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/11/18 16:46:00 [只看该作者]

多线程才能避免卡死。

 回到顶部
帅哥哟,离线,有人找我吗?
黄训良
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1100 积分:8985 威望:0 精华:0 注册:2014/3/15 14:36:00
  发帖心情 Post By:2015/11/18 17:05:00 [只看该作者]

多线程+Foxtable 的FTP照样卡死
如何办呢?

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/11/18 17:06:00 [只看该作者]

例子


 回到顶部
帅哥哟,离线,有人找我吗?
黄训良
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1100 积分:8985 威望:0 精华:0 注册:2014/3/15 14:36:00
  发帖心情 Post By:2015/11/18 17:38:00 [只看该作者]

请老师看看:

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:ftp多线程测试.table


 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/11/18 18:01:00 [只看该作者]

测试,没问题。而且你例子不要做那么复杂。在线程里面写一句upload就好了嘛。

 

我简化了,多个进程同时upload的时候,不会卡住。

 

 


 回到顶部
帅哥哟,离线,有人找我吗?
黄训良
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1100 积分:8985 威望:0 精华:0 注册:2014/3/15 14:36:00
  发帖心情 Post By:2015/11/18 21:17:00 [只看该作者]

以下是引用大红袍在2015/11/18 18:01:00的发言:

测试,没问题。而且你例子不要做那么复杂。在线程里面写一句upload就好了嘛。

 

我简化了,多个进程同时upload的时候,不会卡住。

 

 

我这儿还是卡!

老师的在哪儿呢?

[此贴子已经被作者于2015/11/19 8:34:56编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/11/19 9:26:00 [只看该作者]

呃,不应该卡。测试代码如下

 

调用

 

Dim drs As List(Of DataRow)
drs = DataTables("TempTable").Select("")
For Each dr1 As DataRow In drs
    Dim t1 As New System.Threading.Thread(AddressOf s1)
    t1.Start()
Next

 

全局代码

 

Public Sub s1()
try
    Dim dr As DataRow
    dr = DataTables("ServeIP").DataRows(0)
    Dim ftp As new FTPClient
    ftp.Host = dr("IP")
    ftp.Account = dr("Account")
    ftp.Password = dr("Password")
    ftp.Port = dr("Port")
    ftp.UTF8 = True
   
    If ftp.Connect = True
        Dim fname As String = Rand.NextString(12)
        FileSys.CopyFile("d:/test.pdf", "d:\test\" & fname)
        ftp.Upload("d:\test\" & fname,"/test/" & fname & ".ftp")
    Else
        output.show("ftp连接失败")
    End If
catch ex As exception
    output.show(ex.message)
End try
End Sub

 


 回到顶部
帅哥哟,离线,有人找我吗?
黄训良
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1100 积分:8985 威望:0 精华:0 注册:2014/3/15 14:36:00
  发帖心情 Post By:2015/11/19 12:35:00 [只看该作者]

不行,还是卡!上传的文件大于5M特别明显!

 回到顶部
帅哥哟,离线,有人找我吗?
大红袍
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:39310 积分:196782 威望:0 精华:1 注册:2015/4/25 9:23:00
  发帖心情 Post By:2015/11/19 12:44:00 [只看该作者]

测试8M的文件,没问题啊。我本地ftp测试的。

 回到顶部
总数 17 1 2 下一页