2014-01-09 48 views
0

这可能是一个初学者的问题。执行多个线程并多次运行程序有什么区别吗?通过多次运行程序,我的意思是启动一个终端并多次运行该程序。我读过每个CPU有1个线程的限制,并且我有一个四核机器,所以我想这意味着我有4个CPU。每个CPU有程序的限制吗?多次执行线程和运行程序的区别

回答

2

通常,如果一个程序使用多个线程,这些线程将在他们之间划分程序的工作。例如,一个线程可能在一个巨型数据集的一半上工作,而另一个线程可能占用另一半线程,或者多个线程可能通过网络与单独的机器对话。运行一个程序2次不会有这种效果;你会得到两个网络服务器或两个互相无关的Minecraft游戏。程序可以与其他自身的副本进行通信,有些程序可以这样做,但这不是通常的做法。

+0

是的但是在处理方面有什么区别? – kolonel

+0

@kolonel:这是一个非常模糊的问题。 “在处理方面”是什么意思?我不确定你要查找什么信息,并且直到我说出正确的事情并不是一种有效的沟通方式。 – user2357112

+0

我不是在吐痰事实,相反,我试图理解事实。如果我有一台四核机器,假设我并不担心执行需要多长时间(我现在只是假设没有)。如果有超过4个线程被执行,并且我们知道每个CPU可以一次执行一个线程,其余的“等待排队”,那么如果我运行了5次以上的程序,它是一样的吗?希望这是更好的... – kolonel

0

多线程意味着你可以在同一时间执行一个动作的不同实例。 如果您运行多个程序,它将逐个执行。使用线程我们可以通过并行处理来提高处理速度