談談並行 併發或多執行緒

2022-02-09 06:57:44 字數 836 閱讀 6867

1.cpu的發展趨勢:

核心數目依舊會越來越多,根據摩爾定律,由於單個核心效能提公升有著嚴重的瓶頸問題,普通的pc桌面在2023年可能回到24核心。

2.併發和並行的區別:

所有的併發處理都有排隊等候,喚醒和執行這三個步驟,所以併發是巨集觀的觀念,在微觀上他們都是序列被處理的,只不過資源不會在某乙個上被阻塞(一般是通過時間片輪轉),所以在巨集觀上多個幾乎同時到達的請求同時在被處理。如果是同一時刻到達的請求也會根據優先順序的不同,先後進入佇列排隊等候執行。

併發與並行是兩個既相似但是卻不相同的概念:

併發性:又稱共行性,是指處理多個同時性活動的能力,。

並行:指同時發生兩個併發事件,具有併發的含義。併發不一定並行,也可以說併發事件之間不一定要同一時刻發生。 

併發的實質是乙個物理cpu(也可以是多個物理cpu)在若干個程式之間多路復用,併發性是對有限物理資源強制行使 多使用者共享以提高效率。

並行指兩個或兩個以上事件或活動在同一時刻發生,在多道程式環境下,並行使多個程式同一時刻可在不同cpu上同時執行。    

併發是在同乙個cpu上同時(不是真正的同時,而是看來是同時,因為cpu要在多個程式之間切換)執行多個程式。

並行是每乙個cpu執行乙個程式。

打個比方:併發就像乙個人(cpu)喂兩個小孩(程式)吃飯,表面上是兩個小孩在吃飯,實際是乙個人在喂。

並行就是兩個人喂兩個小孩子吃飯。 

3.併發、並行和多執行緒的關係:

並行需要兩個或兩個以上的執行緒跑在不同的處理器上,併發可以跑在乙個處理器上通過時間片進行切換。

併發 多執行緒 非同步 並行

一 基本概念 併發 同時處理多件事情,在處理第乙個請求時同時響應第二個請求 同步 同步就是順序執行,執行完乙個再執行下乙個,需要等待 協調執行,同步 呼叫在繼續之前等待響應或返回值。如果不允許呼叫繼續,就說呼叫被阻塞 了 非同步 併發的一種形式,1 它採用 機制,避免產生不必要的執行緒。2 多執行緒...

多執行緒的「併發」和「並行」

併發 在單核和多核都可存在,就是 同一時間有多個可以執行的程序 但是在單核中同一時刻只有乙個程序獲得cpu,雖然巨集觀上你認為多個程序都在進行。並行是指同一時間多個程序在微觀上都在真正的執行,這就只有在多核的情況下了。多執行緒不是萬能的.它是併發的,也就是說,它在建立和切換資源時還要額外消耗資源.而...

併發並行同步非同步多執行緒

自 首先理解概念 你吃飯吃到一半,來了,你一直到吃完了以後才去接,這就說明你不支援併發也不支援並行。你吃飯吃到一半,來了,你停了下來接了 接完後繼續吃飯,這說明你支援併發。不一定是同時的 你吃飯吃到一半,來了,你一邊打 一邊吃飯,這說明你支援並行。併發的關鍵是你有處理多個任務的能力,不一定要同時。並...