執行緒,程序,多執行緒簡介
阿新 • • 發佈:2021-07-18
執行緒,程序,多執行緒簡介
執行緒:Thread,是作業系統能夠進行運算排程的最小單位。它被包含在程序之中,是程序中的實際運作單位。
程序:Process,是計算機中的程式關於某資料集合上的一次執行活動,是系統進行資源分配和排程的基本單位,是作業系統結構的基礎。程序一般由程式,資料集合和程序控制塊三部分組成。
多執行緒:multithreading,是指從軟體或者硬體上實現多個執行緒併發執行的技術。(單CPU,時間片輪轉,實現併發效果)
核心概念
- 執行緒就是獨立執行的路徑;
- 線上程執行時,即使沒有自己建立執行緒,後臺也會有多個執行緒,如主執行緒,gc執行緒;
- main()稱之為主執行緒,為系統的入口,用於執行整個程式;
- 在一個程序中,如果開闢了多個執行緒,執行緒的執行由排程器按排排程,排程器是與作業系統緊密相關的,先後順序是不能人為干預的;
- 對同一份資源操作時,會存在資源搶奪的問題,需要加入併發控制;
- 執行緒會帶來額外的開銷,如cpu排程時間,併發控制開銷;
- 每個執行緒在自己的工作記憶體互動,記憶體控制不當會造成資料不一致;