189 8069 5689

vb.net线程池管理 vbnet 多线程

vb.net如何用线程池实现多线程事件响应

这个没法做到。原因

创新互联公司公司2013年成立,是专业互联网技术服务公司,拥有项目成都网站设计、成都网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元浉河做网站,已为上家服务,为浉河各地企业和个人服务,联系电话:13518219792

1)当你将方法排入线程池队列后,此方法在有线程池线程变得可用时执行。

2)线程池中某个线程的可用与不可用,是由.net 后台决定,用户程序无法控制的

3)正如你观察到的:线程启动的时间不同,有快有慢,这恰恰说明线程池起作用了:线程池的调度试图让程序响应达到最佳。

红糖暖胃____关于控制VB.NET的多线程thead抛出的线程数量的问题.__冰天雪地裸体腾空360°跪玻璃渣问

我告诉你思路,你自己去实现。

建议你用“守护线程”的方式去做,这样做对于你一个小任务来说更合适。首先,你要建立一个队列,将所有下载任务放入队列。注意,这个队列必须是“线程安全”的,即两个线程不会抢到同一个任务。然后只开10个线程。这些线程会从队列中读取任务。当一个线程不能再从队列中读取任务时,也就是队列为空时,退出。等所有线程都退出后,你的程序就结束了。

还有一种方法,叫“线程池”,也就是你说的方法,稍微复杂一点:

指定一个变量,用来表示线程的数量。刚开始为0,每开一个线程+1。当一个线程完成任务退出后,这个变量-1。直到所有任务都完成后,不再产生新线程。

多线程 线程池 VB.NET

这个没法做到。原因

1)当你将方法排入线程池队列后,此方法在有线程池线程变得可用时执行。

2)线程池中某个线程的可用与不可用,是由.net 后台决定,用户程序无法控制的

3)正如你观察到的:线程启动的时间不同,有快有慢,这恰恰说明线程池起作用了:线程池的调度试图让程序响应达到最佳。


网站栏目:vb.net线程池管理 vbnet 多线程
标题链接:http://jkwzsj.com/article/dojhige.html

其他资讯