前言
在學習多執行緒的時候,我們必不可少的要寄出幾個概念,這就是併發與並行、程序與執行緒之間的關係與區別,這是我們學習多執行緒最基礎的只是,有只充分理解這個的概念,接下來在多執行緒的學習中才能更加深入充分。
一、併發與並行
併發的概念:指乙個時間段內可以做多個事情:
為了更加深入的理解舉乙個例子:就比如我們在上廁所拉粑粑的時候這時候突然一看時間到了十二點,想起來自己玩的手遊這個時候到了該打工會boss了,這時候立馬提起褲子,跑出去開始玩遊戲去了,等boss結束後你又再次回到了洗手間拉粑粑。
上面的例子我們可以清楚的看到,你在上廁所的時候想起了打boss,於是終止了上廁所這一動作去玩遊戲,而遊戲結束後你有再一次回到了馬桶上,在這段時間內我們完成了兩件事情其一是打boss、另個一就是解決了生理問題,也就是我們上面所提到的,併發強調的是一段時間內處理多件事情
並行的概念:
指在同一時刻可以做多個事情
依舊以我們拉粑粑和玩遊戲為例,不如我們在馬桶上的時候看到了時間到了十二點,但是我們這時候到了關鍵時刻,各種各樣都很不妙,我們再不離開馬桶時掏出手機,一邊完成上廁所這一行為,一邊打boss,這就是並行,並行強調的是同一時間點處理多件事件
二、程序與執行緒
程序指的是正在執行的乙個程式例項,程序是執行緒容器,即乙個程序中有多個執行緒,比如我們打**狐瀏覽器,火狐瀏覽器就是乙個程序,我們在火狐瀏覽器中開啟多可視窗,二這些個視窗就是乙個個執行緒。
程序與執行緒 併發與並行
程序占有的資源 執行緒占有的資源 位址空間 棧全域性變數 暫存器開啟的檔案 狀態等 程式計數器 簡單的理解執行緒安全的問題 多執行緒程式在執行時候,可能會同時對乙個變數進行操作,操作的時候,一般執行緒會將這個變數的值copy到 自身執行緒的巨變變數中,再進行操作,此時可能就會發生 讀寫時資料不同步 ...
python程序與執行緒,同步與非同步,並行併發
from multiprocessing import process,pool import os import time class myprocess process def init self,wtime process.init self self.wtime wtime defrun s...
c 併發程式設計基礎(一) 併發 並行域多執行緒
正文 c 11標準在標準庫中為多執行緒提供了元件,這意味著使用c 編寫與平台無關的多執行緒程式成為可能,而c 程式的可移植性也得到了有力的保證。另外,併發程式設計可提高應用的效能,這對對效能錙銖必較的c 程式設計師來說是值得關注的。回到頂部 併發指的是兩個或多個獨立的活動在同一時段內發生。生活中併發...