どなたか、Java プロデューサー コンシューマー プログラムのコード スニペットを共有していただけませんか。このプログラムの目的は、特定の時点でアイテムが 1 つだけになるようにすることです。待機と通知を使用する必要があることはわかっていますが、完全なスニペットを取得できません。これは、いかなる種類のデータ構造も使用せずに行うことができますか?
前もって感謝します。
class Consumer extends Thread {
private Good gObj;
Consumer(Good g) {
gObj = g;
}
public void run() {
synchronized(gObj) {
wait();
}
}
}
class Good { }
public class Producer implements Runnable {
private Good gObj;
Producer(Good g) {
gObj = g;
}
public void run() {
synchronized(gObj) {
notify();
}
}
public static void main(String[] args) {
Good g = new Good();
Producer p = new Producer(g);
Thread producerThread = new Thread(p);
producerThread.start();
Consumer c = new Consumer(g);
c.start();
}
}