首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

新手请问:开两个线程,是不是就两个任务可以让他们完全同步开始,齐头并进,而不是顺序执行

2012-09-06 
新手请教:开两个线程,是不是就两个任务可以让他们完全同步开始,齐头并进,而不是顺序执行?我有两个都是很长

新手请教:开两个线程,是不是就两个任务可以让他们完全同步开始,齐头并进,而不是顺序执行?
我有两个都是很长的循环过程,我想让他们完全同时开始,同时执行.不要等一个执行完了再另一个或者一个执行到半途再另一个.
请教下如果我像下面这样创建两个线程的话,它们会还是顺序执行的?只有等t执行完了,t2才会开始?因为代码上,开辟线程上也是顺序先后?还是说是完全同时间开始?

VB.NET code
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.ClickDim t As Threadt = New Thread(AddressOf 长循环1)t.Start()Dim t2 As Threadt2 = New Thread(AddressOf 长循环2)t2.Start()end sub

另外,线程池是不是也可以开多个的?像下面这样,它的效果是不是也可以同时开始? 如果是的话,用下面这个好还是上面这个好呢?
VB.NET code
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click        ThreadPool.QueueUserWorkItem(AddressOf 长循环1)        ThreadPool.QueueUserWorkItem(AddressOf 长循环2)end sub

不好意思,vb.net那边太冷清了.发在这里.
多谢!!

[解决办法]
如果你只有一个cpu,线程只能是随机的执行,不可能并行,只有你的cpu数量大于你的线程数量,才有可能并行

热点排行