java執行緒理解及運用
阿新 • • 發佈:2019-02-10
執行緒是什麼
執行緒是程序中的一個實體,是被系統獨立排程和分派的基本單位,執行緒自己不擁有系統資源,只擁有一點在執行中必不可少的資源,但它可與同屬一個程序的其它執行緒共享程序所擁有的全部資源。一個執行緒可以建立和撤消另一個執行緒,同一程序中的多個執行緒之間可以併發執行。由於執行緒之間的相互制約,致使執行緒在執行中呈現出間斷性。執行緒也有就緒、阻塞和執行三種基本狀態。
執行緒是程式中一個單一的順序控制流程.在單個程式中同時執行多個執行緒完成不同的工作,稱為多執行緒.
執行緒和程序的區別在於,子程序和父程序有不同的程式碼和資料空間,而多個執行緒則共享資料空間,每個執行緒有自己的執行堆疊和程式計數器為其執行上下文.多執行緒主要是為了節約CPU時間,發揮利用,根據具體情況而定. 執行緒的執行中需要使用計算機的記憶體資源和CPU
執行緒的生命週期
執行緒有5種狀態:新建(new)、就緒(runnable)、執行(running)、阻塞、死亡(dead)。每種狀態都是可以相互轉換的。使用執行緒方法
1、繼承Thread類2、實現Runnable介面,但是Runnable介面中沒有start()方法,所以還需要new一個新的Thread執行緒來啟動實現Runnable的子類。擴充
程序和執行緒的區別:程序
程序是一個程式執行的例項,比如說我們開啟10個IE瀏覽器視窗,那麼就有10個程序開啟。一個程序可以同時被執行若干次,程序是CPU進行資源分配和排程的基本單位。轉載:https://blog.csdn.net/u010456903/article/details/45871441 https://www.cnblogs.com/liboBlog/p/6430551.html