以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助]如何避免执行FTP多个任务,项目卡死的情况 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=77458) |
||||
-- 作者:黄训良 -- 发布时间:2015/11/18 16:36:00 -- [求助]如何避免执行FTP多个任务,项目卡死的情况 如何避免执行FTP多个任务,项目卡死的情况,类似下载工具那样的功能! |
||||
-- 作者:大红袍 -- 发布时间:2015/11/18 16:46:00 -- 多线程才能避免卡死。 |
||||
-- 作者:黄训良 -- 发布时间:2015/11/18 17:05:00 --
|
||||
-- 作者:大红袍 -- 发布时间:2015/11/18 17:06:00 -- 例子 |
||||
-- 作者:黄训良 -- 发布时间:2015/11/18 17:38:00 -- 请老师看看:
|
||||
-- 作者:大红袍 -- 发布时间:2015/11/18 18:01:00 -- 测试,没问题。而且你例子不要做那么复杂。在线程里面写一句upload就好了嘛。
我简化了,多个进程同时upload的时候,不会卡住。
|
||||
-- 作者:黄训良 -- 发布时间:2015/11/18 21:17:00 -- 以下是引用大红袍在2015/11/18 18:01:00的发言:
测试,没问题。而且你例子不要做那么复杂。在线程里面写一句upload就好了嘛。
我简化了,多个进程同时upload的时候,不会卡住。
我这儿还是卡! 老师的在哪儿呢? [此贴子已经被作者于2015/11/19 8:34:56编辑过]
|
||||
-- 作者:大红袍 -- 发布时间:2015/11/19 9:26:00 -- 呃,不应该卡。测试代码如下
调用
Dim drs As List(Of DataRow)
全局代码 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
|
||||
-- 作者:黄训良 -- 发布时间:2015/11/19 12:35:00 -- 不行,还是卡!上传的文件大于5M特别明显! |
||||
-- 作者:大红袍 -- 发布时间:2015/11/19 12:44:00 -- 测试8M的文件,没问题啊。我本地ftp测试的。 |