1. 程式人生 > >同步、非同步、多執行緒、高併發不再混淆!

同步、非同步、多執行緒、高併發不再混淆!

高併發:“短時間內遇到大量操作請求”的情況。

多執行緒:多執行緒就是指一個程序中同時有多個執行緒正在執行。其目的就是當某個執行緒很耗時的時候使用多執行緒,可以在將耗時任務放在後臺繼續執行的同時,同時執行其他操作,達到提升效率,優化使用者體驗的效果。

多執行緒是完成高併發任務的一種方法,高併發是系統執行的一種狀態,通過多執行緒有助於系統承受高併發狀態的實現。

多執行緒是解決高併發問題的其中的一個方法手段。

同步:當前操作(函式、資源)執行(利用)完,在執行(利用)其他的操作(函式、資源)。

非同步:不必等待當前操作(函式、資源)執行(利用)完,就可以(利用)其他的操作(函式、資源)。

下面舉個例子: 比方說我用瀏覽器提交一段資訊(內容很多,儲存過程需要1分鐘)上傳到伺服器。同步情況下我要等待1分鐘之後瀏覽器提示我資訊已儲存;如果是非同步情況下馬上就能提示我資訊已儲存,其實資訊還是1分鐘之後儲存到伺服器上的,只不過使用者體感非常好。

此時我們需要非同步,那麼如何實現呢?可以通過多執行緒實現。

多執行緒可以實現非同步!

執行緒之間的同步又是怎麼回事呢?

你開啟多執行緒之後有可能對共享資源進行更改,那麼就存在安全問題。執行緒同步就是解決這些安全問題的有效方法!

原文:https://blog.csdn.net/ideality_hunter/article/details/53453285