行程與執行緒的概念
程式(資源分配的最小單位):是一個動態概念,是競爭電腦系統資源(CPU 、記憶體、IO等)的基本單位,是並發執行的程序在執行過程中分配和管理資源的基本單位。
執行緒(程式執行的最小單位):是比行程更小的獨立運行的基本單位,執行緒也被稱為輕量級進程。是CPU調度和分派的基本單位。
一個程式至少一個行程,一個行程至少一個執行緒。
程式與執行緒的差異
1、位址空間:同一行程的執行緒共享本程序的位址空間,而行程之間則是獨立的位址空間;
2、資源擁有:同一進程內的執行緒共享本進程的資源,如IO、記憶體、CPU等,但是進程之間的資源是獨立的;
3 、所以多行程程式要比多執行緒更健壯,多執行緒程式只要有一個執行緒死掉,整個行程就死掉;但是一個行程崩潰後,在保護模式下不會對其他行程產生影響,因為行程有自己的獨立的位址空間;
4、進程切換時,消耗的資源大,效率高。所以在涉及到頻繁切換時,使用線程要比進程好。如果同時進行並且又要共享某些變數的並發操作,只能用執行緒。
5、執行過程:進程相當於一個應用程式執行的實例,所以每個獨立的進程都有一個程式運行的入口、程式順序執行序列和程式運行出口。每個執行緒相當於這個應用程式(進程)的一個執行流,所以不能獨立執行必須依存在應用程式(進程)之中,由應用程式提供多個執行緒執行控制;
6、執行緒是處理器調度的基本單位,但是行程不是;
7、執行緒和行程都可以並發執行;
##優缺點
執行緒執行開銷小,但是不利於資源管理與保護。執行緒適合在SMP(Symmetric Multi-Processing)機器(多CPU系統)上運作。 進程執行開銷大,但是能夠很好的進行資源管理和保護。 推薦教學:以上是java中進程與執行緒的區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

AI Hentai Generator
免費產生 AI 無盡。

熱門文章

熱工具

Dreamweaver Mac版
視覺化網頁開發工具

EditPlus 中文破解版
體積小,語法高亮,不支援程式碼提示功能

Atom編輯器mac版下載
最受歡迎的的開源編輯器

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)