home *** CD-ROM | disk | FTP | other *** search
- class CubbyHole {
- private int seq; // this is the condition variable.
- private boolean available = false;
-
- public synchronized int get() {
- while (available == false) {
- try {
- wait();
- } catch (InterruptedException e) {
- }
- }
- available = false;
- notify();
- return seq;
- }
-
- public synchronized void put(int value) {
- while (available == true) {
- try {
- wait();
- } catch (InterruptedException e) {
- }
- }
- seq = value;
- available = true;
- notify();
- }
- }
-