读书人

idftp实时下传文件.

发布时间: 2013-01-09 09:38:15 作者: rapoo

idftp实时上传文件...
现使用IDFTP向服务器上传文件,文件是定时生成的,生成文件是程序控制知道何时生成.现在想实现,一生成文件就开始上传,不知道用什么方法来实现,目前想的是一生成文件就开一个子线程去上传文件,但这样会出现如果上个文件还不有传完,又开始传下个文件,这个如果网络慢的话,线程就越来越多,总觉得这样操作不妥当,且对线程操作也不熟悉..

请大家帮忙想想有什么方法来实现..

[解决办法]
是互斥的,如果互斥部分代码非常小(即不需要互斥的都拿出去)

我那个回复里,通过使用临界区的方式,只互斥了一下与TList.count有关的读写:上传线程里取值时;主线程里添加新项目时;上传线程删除一个项目时。

也就是说,上传线程取数量或删除一个的时候,主线程是不能加的,要等;主线程添加的时候,上传线程不能读和删除,也要等。但这个等的时间是极短的,因为互斥部分的代码非常小。这互斥只限于这些动作,只要不是这些动作,大家各干各的,互不干涉。

生成快,上传慢。这就是程序用线程或timer来做的目的,所谓的前后台各搞各的,但不能乱了步点。

不知道,这样说能否明白?

读书人网 >.NET

热点推荐