package com.test.thread;
/*測試生產者消費者模型-->利用緩衝區解決:管程法
生產者,消費者,產品,緩衝區
*/public
class
testpc
}//生產者類
class
productor
extends
thread
//生產雞!
@override
public
void
run()}
}//消費者類
class
consumer
extends
thread
//消費者消費
@override
public
void
run()}
}//產品類
class
chicken
}class
syscontainer
catch
(interruptedexception e)
}//容器沒有滿,就放入產品
chickens[count]
=chicken;
count++
;//通知消費者消費
this
.notifyall()
;}//消費者消費
public
synchronized chicken pop()
catch
(interruptedexception e)
}//有雞就可以消費
count--
; chicken chicken =chickens[count]
;//喚醒生產者生產
this
.notifyall()
;return chicken;
}}
生產者消費者模型 管程法
package thread 測試 生產消費者模型 利用緩衝區解決 管程法 public class pcthread 生產者 class product extends thread 生產 override public void run 消費者 class consumer extends th...
管程法實現生產者消費者模式
package monitormethod author 丟了風箏的線 see 測試管程法 public class test package monitormethod author 丟了風箏的線 see 存放商品的倉庫 public class warehouse catch interrupt...
生產者 消費者問題(管程法與訊號燈法)
應用場景 生產者和消費者問題 假設倉庫中只能存放一件產品,生產者將生產出來的產品放入倉庫,消費者將倉庫中產品取走消費.如果倉庫中沒有產品,則生產者將產品放入倉庫,否則停止生產並等待,直到倉庫中的產品被消費者取走為止.如果倉庫中放有產品,則消費者可以將產品取走消費,否則停止消費並等待,直到倉庫中再次放...