1.並發編程下
這兩個名詞都是並發編程中的概念,在並發編程的模型下的定義:
- 並發:是在同一個cpu上同時(不是真正的同時,而是看來是同時,因為cpu要在多個程序間切換)運行多個程序。
- 並行:是多個或同時一個cpu上,每個cpu運行一個程序。
打個比方,並發,就像一個人(cpu)喂2個孩子(程序),輪換着每人喂一口,表面上兩個孩子都在吃飯。
並行,就是2個人喂2個孩子,兩個孩子也同時在吃飯。
並行和並發並不是兩個互斥的概念。
2.垃圾收集器下
在談論垃圾收集器的上下文語境中,可以這么理解這兩個名詞:
1、並行Parallel
多條垃圾收集線程並行工作,但此時用戶線程仍然處於等待狀態
2、並發Concurrent
指用戶線程與垃圾收集線程同時執行(但並不一定是並行的,可能會交替執行),用戶程序在繼續運行,而垃圾收集程序運行於另一個CPU上
轉載地址:http://www.cnblogs.com/xrq730/p/4839245.html