//郑州轻工业大学
//题号:实验三 第二题
//题目: 一个面包店有一名面包师和两名店员,面包师负责做面包,店员负责卖面包。假设现在有20块面包,每当店员1或店员2卖出一块面包,总的面包数量就会减1,同时在卖面包的同时,面包师也再不断加工面包。要求利用线程同步编写一个多线程程序,模拟面包店面包师加工面包和销售面包的过程,当面包师加工一块面包时,打印输出“面包师加工出一块面包,现有面包有块”;当店员1或店员2卖出一块面包时,打印输出“店员1或店员2卖出一块面包,现有面包块”。
————————————————————————————————
示例图
代码
import javax.swing.*;
import static java.lang.Thread.sleep;
public class renwu2 implements Runnable {
int a = 30;
JLabel max;
public renwu2() {
Thread t = new MyThred();
t.start();
}
@Override
public void run() {
while (true) {
a=a-1;
System.out.println("店员一或店员二卖出一块面包,现在有:"+a+"块面包");
try {
sleep(2000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
class MyThred extends Thread {
public MyThred() {
}
public void run() {
for (; true;) {
a=a+1;
System.out.println("面包师加工出一块面包,现在有:"+a+"块面包。");
try {
sleep(1000);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}
public static void main(String[] args) {
renwu2 t1 = new renwu2();
Thread th1 = new Thread(t1);
th1.start();
}
}
持续更新学习内容,
、