2012-04-25 43 views
2

這兩者的定義是什麼,「異構任務」和「同質任務」之間有什麼區別?當我讀到Java併發實踐這本書時,這兩個短語就跳出來了。在我看來,這是任務的大小和處理時間。但我不太瞭解它。我GOOGLE了它,但無法找到準確的答案。誰能幫我?謝謝。異構任務和同構任務

+0

@格雷,謝謝你的幫助。 – ohyeahchenzai 2012-04-26 13:31:34

回答

3
  • 均質任務:任務的組以類似的方式處理並花費大致相同的時間量。示例:將平方函數應用於數組的每個元素。模式:數據並行。
  • 異構任務:一組沒有明確邏輯關係並可能在不同時間執行的任務。示例:與下載網頁並行估計pi。模式:任務平行。
+0

我在哪裏可以找到數據並行和任務並行的定義,或者可以給我一個鏈接,我想我不知道它們的含義。 – ohyeahchenzai 2012-04-26 14:06:09

+0

@ohyeahchenzai:當然,你可以在維基頁面找到基本的定義:http://en.wikipedia.org/wiki/Data_parallelism和http://en.wikipedia.org/wiki/Task_parallelism – Tudor 2012-04-26 19:58:05

0

它可能指的是這樣的:

  • 異構任務從根本上不同的任務。例如,「獲取最新天氣」與「獲取最新消息」。這有時被稱爲基於任務的並行性
  • 均質任務是執行相同任務但可能具有不同輸入的任務。例如,「我有20個股票代號 - 獲取每個股票代碼的股票價格」。這有時被稱爲基於數據的並行性

(注意含義任務/基於數據的並行性似乎根據上下文來改變上述希望是正確的,在至少一些上下文;)

0

我認爲它們在本書中的含義是,如果你有20個任務,19個需要10ms來完成每個任務,另外1個需要完成。按順序或同時運行它們不會產生巨大的影響:它將會花費更多或更少的1秒。

如果您有20個任務需要10ms才能完成並且是獨立的,那麼您可以通過併發運行而不是按順序來顯着縮短執行時間。

+0

我想你已經表達了什麼是任務規模和他們之間的關係(如果獨立的話),如果書中有這樣的話,我可能會更清楚,但是這兩個短語沒有解釋就跳出來了,我的英語不太好,所以我問這個問題去檢查一下如果任何人有這兩個更正式的定義! – ohyeahchenzai 2012-04-26 14:12:22