/*
建立執行緒的第一種方法:繼承thread類。
步驟:1,定義乙個類繼承thread
2,複寫thread類中的run方法
目的:將自定義**儲存在run方法中,讓執行緒執行
3,呼叫執行緒的start方法,該方法用兩個作用:啟動執行緒,呼叫run方法
多執行緒的特性:隨機性
*///示例**:
class demo extends thread //繼承thread類
}class threaddemo1
}
/*建立執行緒的第二種方法:實現runnable介面
步驟:1,定義乙個類實現runnable介面
2,覆蓋runnable介面中的run方法
將執行緒要執行的**存放在該run方法中
3,通過thread類建立執行緒物件。
4,將runnable介面的子類物件傳遞給thread的建構函式
為什麼要將runnable介面的子類物件傳遞給thread的建構函式?
因為自定義的run方法所屬的物件是runnable介面的子類物件
所以要讓執行緒去指定物件的run方法。就必須明確該run方法所屬物件
5,呼叫thread類的start方法開啟執行緒並呼叫runnable介面子類的run方法
*///示例**:
class ticket implements runnable }}
class threadtest1
}
java中的多執行緒
package testthread 店員從生產者取貨,消費者從店員取貨,店員最多只能存放20個產品,當產品不夠20個需通知生產者生產,超過20個時停止消費 author passenger 店員類 class clerk catch interruptedexception e else 消費產品...
java 中 的多執行緒
package wait 執行緒同步涉及的 同步控制 wait 使當前執行緒等待,不在爭搶cpu,並釋放同步 塊 或 同步方法的 鎖 notify 喚醒 某乙個 被 wait 的執行緒 notifyall 喚醒所有 被 wait 的執行緒 public class testwait implemen...
Java多執行緒中的wait notify
關於物件鎖 物件鎖 wait 方法在使用之前,必須先獲得此物件的物件鎖,所以必須在同步方法或者同步塊中使用,執行 wait 方法後,當前執行緒釋放該物件的鎖。wait 返回之前,此執行緒需要和其他等待物件的執行緒競爭來獲得鎖,才能繼續執行 wait 後的處理。notify 方法也必須在同步方法或者同...