请教一个关于C#多线程数据同步的问题?

ericSola 2011-04-02 03:33:56
目前我需要实现的功能是这样的
我需要检查一个URL列表中的URL是否能够正常的访问,大概有150个URL,我现在使用的是五个线程来检查
编写了一个函数专门用来检测URL是否能正常访问,timeout是20s,非常慢。
我举例来说一下,例如五个线程分别是 t1,t2,t3,t4,t5, 我把线程信息显示出来的结果显示的是
如果t1正在检测某个url是否正常,在没有到20s的时间,t2不会执行,这样不是和单线程没什么区别吗?
不知道我描述清楚了没?

我想的是实现这样的功能,有一个线程池,里面有五个线程,t1去检查一个url,t2去检查另外一个,但是他们是同时进行的
,还要检查的url不重复

请大侠们给个思路,如果我没有描述清楚,请在帖子里说下,我再想想怎么来描述好
...全文
122 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
ly_c_sin 2011-04-02
  • 打赏
  • 举报
回复
同步不是多个线程执行的时候必须点等上一个线程执行完毕了下一个线程才可以执行吗
不知道我说的对不对
lizhibin11 2011-04-02
  • 打赏
  • 举报
回复
用队列也很好,避免资源浪费,但是从队列取出URL时必须Lock
lizhibin11 2011-04-02
  • 打赏
  • 举报
回复
把150个URL分为五组,同时启动五个线程从五个索引0,30,60,90,120开始检查,每个线程循环检查三十个。
cc_net 2011-04-02
  • 打赏
  • 举报
回复
吧要检查的URL加入队列。线程从队列中取出一个进行检查

111,094

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

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