一、同步VS異步
同步和異步我們經常見的,同步: 執行方法是有時間順序的,例如我們運行一個同步方法,必須等這個方法執行結束才能執行下一步操作,異步:沒有時間順序,不需要等這個方法執行完,我們就可以執行下一步操作。
二、並行VS併發
併發我們經常聽見,但是並行很少聽見吧,並行:就是一起執行,同時進行,例如一個房子有四個門,四個人可以同時進入;併發:爭搶執行,例如一個房子只有一門,四個人進入,誰快誰先進去
三、堵塞VS非堵塞
阻塞和非阻塞通常用來形容多線程間的相互影響,比如一個線程佔有了臨界區資源,那麼其他線程需要這個資源就必須進行等待該資源的釋放,會導致等待的線程掛起,這種情況就是阻塞,而非阻塞就恰好相反,它強調沒有一個線程可以阻塞其他線程,所有的線程都會嘗試地往前運行。