-
大小: 31KB文件類型: .rar金幣: 1下載: 0 次發(fā)布日期: 2021-01-03
- 語(yǔ)言: 其他
- 標(biāo)簽:
資源簡(jiǎn)介
1、設(shè)計(jì)目的:通過研究Linux的進(jìn)程同步機(jī)制和信號(hào)量,實(shí)現(xiàn)生產(chǎn)者消費(fèi)者問題的并發(fā)控制。
2、說明:有界緩沖區(qū)內(nèi)設(shè)有20個(gè)存儲(chǔ)單元,放入取出的產(chǎn)品設(shè)定為20個(gè)100以內(nèi)的隨機(jī)整數(shù)。
3、設(shè)計(jì)要求:
1) 生產(chǎn)者與消費(fèi)者均有二個(gè)以上
2) 生產(chǎn)者和消費(fèi)者進(jìn)程的數(shù)目在程序界面上可調(diào),在運(yùn)行時(shí)可隨時(shí)單個(gè)增加與減少生產(chǎn)者與消費(fèi)者
3) 生產(chǎn)者的生產(chǎn)速度與消費(fèi)者的消費(fèi)速度均可在程序界面調(diào)節(jié),在運(yùn)行中,該值調(diào)整后立即生效
4) 生產(chǎn)者生產(chǎn)的產(chǎn)品由隨機(jī)函數(shù)決定
5) 多個(gè)生產(chǎn)者或多個(gè)消費(fèi)者之間必須有共享對(duì)緩沖區(qū)進(jìn)行操作的函數(shù)代碼
6) 每個(gè)生產(chǎn)者和消費(fèi)者對(duì)有界緩沖區(qū)進(jìn)行操作后,即時(shí)顯示有界緩沖區(qū)的全部?jī)?nèi)容、
代碼片段和文件信息
//消費(fèi)者線程類
public?class?DecreaseThread?extends?Thread
{
private?MyStorage?myStorage;//保存一個(gè)MyStorage類的引用
static?long?speed?=?1000;//speed表示消費(fèi)者線程的速度
public?static?int?pause2?=?0;//psuse2變量用來控制消費(fèi)者線程的開始與暫停
//定義構(gòu)造方法,接收一個(gè)MyStorage類型的變量
public?DecreaseThread(MyStorage?myStorage)
{
this.myStorage?=?myStorage;
}
//run()方法調(diào)用接收的MyStorage類型的變量指向的decrease()方法,開始消費(fèi)元素。
public?void?run()
{
while?(true)
{
if(pause2?==?1)
{
try
{
Thread.sleep(speed);
}
catch?(InterruptedException?e)
{
e.printStackTrace();
}
myStorage.decrease();
}
}
}
}
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件????????301??2013-07-11?15:52??p_c\.classpath
?????文件????????379??2013-07-11?15:52??p_c\.project
?????文件????????629??2013-07-11?15:52??p_c\.settings\org.eclipse.jdt.core.prefs
?????文件????????823??2013-07-15?12:40??p_c\bin\DecreaseThread.class
?????文件????????823??2013-07-15?12:40??p_c\bin\IncreaseThread.class
?????文件????????740??2013-07-15?13:25??p_c\bin\MainWindow$1.class
?????文件???????1075??2013-07-15?13:25??p_c\bin\MainWindow$10.class
?????文件????????866??2013-07-15?13:25??p_c\bin\MainWindow$11.class
?????文件???????1257??2013-07-15?13:25??p_c\bin\MainWindow$12.class
?????文件????????967??2013-07-15?13:25??p_c\bin\MainWindow$2.class
?????文件????????965??2013-07-15?13:25??p_c\bin\MainWindow$3.class
?????文件????????967??2013-07-15?13:25??p_c\bin\MainWindow$4.class
?????文件????????965??2013-07-15?13:25??p_c\bin\MainWindow$5.class
?????文件????????740??2013-07-15?13:25??p_c\bin\MainWindow$6.class
?????文件???????1208??2013-07-15?13:25??p_c\bin\MainWindow$7.class
?????文件????????740??2013-07-15?13:25??p_c\bin\MainWindow$8.class
?????文件???????1208??2013-07-15?13:25??p_c\bin\MainWindow$9.class
?????文件???????4968??2013-07-15?13:25??p_c\bin\MainWindow.class
?????文件???????2068??2013-07-15?12:40??p_c\bin\MyStorage.class
?????文件????????712??2013-07-15?10:34??p_c\src\DecreaseThread.java
?????文件????????711??2013-07-15?10:34??p_c\src\IncreaseThread.java
?????文件??????10699??2013-07-15?13:25??p_c\src\MainWindow.java
?????文件???????2177??2013-07-11?15:55??p_c\src\MyStorage.java
?????文件??????14173??2013-07-15?19:38??p_c\生產(chǎn)者與消費(fèi)者.jar
?????目錄??????????0??2013-07-15?13:42??p_c\.settings
?????目錄??????????0??2013-07-15?13:42??p_c\bin
?????目錄??????????0??2013-07-15?13:42??p_c\src
?????目錄??????????0??2013-07-15?19:38??p_c
-----------?---------??----------?-----??----
????????????????50161????????????????????28
............此處省略1個(gè)文件信息
評(píng)論
共有 條評(píng)論