執行緒的概念與原理
執行緒是指進程中的一個執行流程,一個行程中可以執行多個執行緒。例如java.exe進程中可以運行很多執行緒。執行緒總是屬於某個進程,執行緒沒有自己的虛擬位址空間,與進程內的其他執行緒一起共用分配給該進程的所有資源。
執行緒在執行過程中與行程是有區別的。每個獨立的執行緒都有一個程式運行的入口、順序執行序列和程式的出口。但是執行緒不能夠獨立執行,必須依存在應用程式中,由應用程式提供多個執行緒執行控制。
執行緒是進程的一個實體,是CPU調度和分派的基本單位,它是比行程更小的能獨立運作的基本單位。線程本身基本上不擁有系統資源,只擁有一點在運行中必不可少的資源(如程序計數器,一組寄存器和棧),但是它可與同屬一個進程的其他的線程共享進程所擁有的全部資源。
執行緒有自己的堆疊和局部變量,但執行緒之間沒有單獨的位址空間,一個執行緒包含以下內容:
1、 一個指向目前被執行指令的指令指標;
2、一個堆疊;
3、一個暫存器值的集合,定義了一部分描述正在執行執行緒的處理器狀態的值;
# 4、一個私有的資料區。
Java中的線程
在Java中,「線程」指兩件不同的事情:
1、java.lang.Thread類的一個實例;
2、執行緒的執行。
在Java程式中,有兩種方法建立執行緒:
一、是對Thread 類別進行衍生並覆寫run方法;
二、是透過實作Runnable接口創建。
推薦教學:Java教學
以上是java中什麼是執行緒?該如何理解?的詳細內容。更多資訊請關注PHP中文網其他相關文章!