我们在使用Java多线程程序的时候会遇到不少的问题,当我们解决这个问题的时候在源代码中就是最好的答案发源地。下面我们就来看看Java多线程程序的源代码。
对于Java多线程程序来说,不管任何编程语言,生产者和消费者模型都是最经典的。就像学习每一门编程语言一样,Hello World!都是最经典的例子。实际上,准确说应该是“生产者-消费者-仓储”模型,离开了仓储,生产者消费者模型就显得没有说服力了。对于此模型,应该明确一下几点:
1、生产者仅仅在仓储未满时候生产,仓满则停止生产。
2、消费者仅仅在仓储有产品时候才能消费,仓空则等待。
3、当消费者发现仓储没产品可消费时候会通知生产者生产。
4、生产者在生产出可消费产品时候,应该通知等待的消费者去消费。
此模型将要结合java.lang.Object的wait与notify、notifyAll方法来实现以上的需求。这是非常重要的。
Java多线程程序代码
1.public class Test {
2.public static void main(String[] args) {
3.Godown godown = new Godown(30);
4.Consumer c1 = new Consumer(50, godown);
5.Consumer c2 = new Consumer(20, godown);
6.Consumer c3 = new Consumer(30, godown);
7.Producer p1 = new Producer(10, godown);
8.Producer p2 = new Producer(10, godown);
9.Producer p3 = new Producer(10, godown);
10.Producer p4 = new Producer(10, godown);
11.Producer p5 = new Producer(10, godown);
12.Producer p6 = new Producer(10, godown);
13.Producer p7 = new Producer(80, godown);
14.c1.start();
15.c2.start();
16.c3.start();
17.p1.start();
18.p2.start();
19.p3.start();
20.p4.start();
21.p5.start();
22.p6.start();
23.p7.start();
24.}
25.}
|
|