2014-01-09 46 views
0

這可能是一個初學者的問題。執行多個線程並多次運行程序有什麼區別嗎?通過多次運行程序,我的意思是啓動一個終端並多次運行該程序。我讀過每個CPU有1個線程的限制,並且我有一個四核機器,所以我想這意味着我有4個CPU。每個CPU有程序的限制嗎?多次執行線程和運行程序的區別

回答

2

通常,如果一個程序使用多個線程,這些線程將在他們之間劃分程序的工作。例如,一個線程可能在一個巨型數據集的一半上工作,而另一個線程可能佔用另一半線程,或者多個線程可能通過網絡與單獨的機器對話。運行一個程序2次不會有這種效果;你會得到兩個網絡服務器或兩個互相無關的Minecraft遊戲。程序可以與其他自身的副本進行通信,有些程序可以這樣做,但這不是通常的做法。

+0

是的但是在處理方面有什麼區別? – kolonel

+0

@kolonel:這是一個非常模糊的問題。 「在處理方面」是什麼意思?我不確定你要查找什麼信息,並且直到我說出正確的事情並不是一種有效的溝通方式。 – user2357112

+0

我不是在吐痰事實,相反,我試圖理解事實。如果我有一臺四核機器,假設我並不擔心執行需要多長時間(我現在只是假設沒有)。如果有超過4個線程被執行,並且我們知道每個CPU可以一次執行一個線程,其餘的「等待排隊」,那麼如果我運行了5次以上的程序,它是一樣的嗎?希望這是更好的... – kolonel

0

多線程意味着你可以在同一時間執行一個動作的不同實例。 如果您運行多個程序,它將逐個執行。使用線程我們可以通過並行處理來提高處理速度