关于C#线程暂停的问题

做一个下载程序,在不同的时间段自动下载不同时间段更新的文件,
怎样让它下载完某个一个时间段的文件后暂停,等到下一个时间段在自动下载?

由于不同的时间段间隔比较大,而且根据网速的不同下载文件的速度也会不同,
比如早上6点开始下载,可能7点下载完也可能12点才下载完
,下一个文件更新的时间段是中午12点,时间就不会太固定,
所以我觉得thead.sleep()不是个好方法,请问下还有其他的方法吗?

2个回答

怎样让它下载完某个一个时间段的文件后暂停,等到下一个时间段在自动下载?
服务器端需要在在下次下载之前获取到客户端(本地)已经下载文件的字节数,然后才可以续传剩下的字节到客户端。
如果下载速度不一样,需要考虑一下客户端和服务器端等相关网络连接的timeout 设置,比如一个session的timeout,http 执行的timeout,客户端的cookie的timeout时间。

weixin_39391823
UKnowImJin 水平不太够,看不太懂,,,
大约 3 年之前 回复

新建一根线程,跑一个定时器函数,每秒检测一次,取本地时间戳,比较是否为当前时间,是就下载,不是就不下载。然后下载是队列,单线程就行

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问
相关内容推荐