回覆列表
-
1 # 手機使用者51977825032
-
2 # 山東中公優就業
程序:每個程序都有獨立的程式碼和資料空間(程序上下文),程序間的切換會有較大的開銷,一個程序包含1--n個執行緒。
執行緒:同一類執行緒共享程式碼和資料空間,每個執行緒有獨立的執行棧和程式計數器(PC),執行緒切換開銷小。
執行緒和程序一樣分為五個階段:建立、就緒、執行、阻塞、終止。多程序是指作業系統能同時執行多個任務(程式)。
多執行緒是指在同一程式中有多個順序流在執行。在java中要想實現多執行緒,有兩種手段,一種是繼續Thread類,另外一種是實現Runable介面總結:實現Runnable介面比繼承Thread類所具有的優勢:
1):適合多個相同的程式程式碼的執行緒去處理同一個資源
2):可以避免java中的單繼承的限制
3):增加程式的健壯性,程式碼可以被多個執行緒共享,程式碼和資料獨立
java中有兩種方式實現多執行緒,一種是繼承Thread類,一種是實現Runnable介面 由於java中是單繼承的,所以大部分情況下,實現runnable介面可以避免繼承的侷限性。並且用的最多的也是這個runnable 實際上 根據 public class Thread extends Object implements Runnable可以看出 thread就是提供給程式設計師,已實現介面runnable中函式的一個子類。