C# 文件的上传与下载,多任务的处理

CYSONG168 2010-04-07 03:08:47
任务列表中有多个任务,有上传的任务,也有下载的任务,允许任务同时运行。
那位有思路?
做过这方面的兄弟姐妹不吝赐教!谢谢。

我的思路是为每一个任务建立一个线程(这个过程封装成一个类。这个类中实现对当前线程\任务的开始,暂停等操作),不知道怎么样,会有什么影响?
...全文
326 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
wsl_1025 2011-06-06
  • 打赏
  • 举报
回复
我最近也在做的,等做好了,就跟大家分享啊···
CYSONG168 2010-04-13
  • 打赏
  • 举报
回复
thread.Suspend();
thread.Resume();
这两个方法已经过时了,有没有提代的方法??
是不 是还可以用。只是要慎用。是不是这个意思?
z812183667 2010-04-13
  • 打赏
  • 举报
回复
不懂,学习,等待正解
CYSONG168 2010-04-13
  • 打赏
  • 举报
回复
下了几个,下载的例子作用不大。
CYSONG168 2010-04-13
  • 打赏
  • 举报
回复
7天过去了,终于有了答案:和大家共享,有问题多指教。

解决的方法原则:
a.对多线程的详细控制不能用线程池,线程池不支持对线程的详细控制;
b.通过对象来详细控制某一个线程######
d.对于多任务处理中,任务的等待问题可以设置一个定时检查,做相关处理。
e.对于多任务处理中,任务的优先级可以通过对线程的详细控件,设置线程的优先级。
lllanm 2010-04-13
  • 打赏
  • 举报
回复
最好是在线程里分段传输, 暂停就是用事件阻塞线程, 再传输就是释放事件让线程继续工作
ttllxx 2010-04-12
  • 打赏
  • 举报
回复
csdn的下载栏中好像有一个多线程下载的源码。可以找一下。
jaredzeng 2010-04-12
  • 打赏
  • 举报
回复
关注


每天回帖即可获得10分可用分!小技巧:教您如何更快获得可用分
zhjinzhao 2010-04-10
  • 打赏
  • 举报
回复
一个多线程的任务下载,虽然没有上传,也许对你有启发。
http://download.csdn.net/source/294368(10分)
jdslsh 2010-04-10
  • 打赏
  • 举报
回复
关注中^^^
  • 打赏
  • 举报
回复
我的思路是为每一个任务建立一个线程(这个过程封装成一个类。这个类中实现对当前线程\任务的开始,暂停等操作),不知道怎么样,会有什么影响?

能会怎么样?又能会有什么影响?
一个任务一个线程,是比较简单的实现的,如果你想提高效率的话,对单个任务就用多线程来实现,即比如一个下载任务,就用多线程去下载。效率大概有30%的提高。
另外,这种网络传输相关的程序,看效率不在于你程序的效率,而是多开几个任务后,带宽就占满了,效率受带宽和网卡的影响。
CYSONG168 2010-04-08
  • 打赏
  • 举报
回复
谢谢楼上的。我以前没有做过多线程。

现在的问题是:
1. 一个线程对应一个任务,有5个线程(线程数/任务数可以设置),怎么去取得某一任务对应的线程。
2. 5个线程通过线程池来管理,线程池中的正在运程的线程我还能否进行干预(比如找到对应的线程,让它暂停或者休眠)。

注:
我想让一个任务暂停,那我就需要去取得这个线程,让它先挂起
我想让一个任务开始,那我就需要去取得这个线程,让它恢复。
功能像迅雷的下载任务列表的功能。
或者有好的任务管理思路给分享一下,谢谢了。

17,740

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 .NET Framework
社区管理员
  • .NET Framework社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧