⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 consumer.java

📁 learning java的源代码。书中每个实例都有相关的代码example。
💻 JAVA
字号:
//file: Consumer.javaimport java.util.Vector;class Producer extends Thread {    static final int MAXQUEUE = 5;    private Vector messages = new Vector(  );    public void run(  ) {        try {            while ( true ) {                putMessage(  );                sleep( 1000 );            }        }        catch( InterruptedException e ) { }    }    private synchronized void putMessage(  )      throws InterruptedException {        while ( messages.size(  ) == MAXQUEUE )            wait(  );        messages.addElement( new java.util.Date().toString(  ) );        notify(  );    }    // called by Consumer    public synchronized String getMessage(  )      throws InterruptedException {        notify(  );        while ( messages.size(  ) == 0 )            wait(  );        String message = (String)messages.firstElement(  );        messages.removeElement( message );        return message;    }}  // end of class Producerpublic class Consumer extends Thread {    Producer producer;    Consumer(Producer p) {        producer = p;    }    public void run(  ) {        try {            while ( true ) {                String message = producer.getMessage(  );                System.out.println("Got message: " + message);                sleep( 2000 );            }        }        catch( InterruptedException e ) { }    }    public static void main(String args[]) {        Producer producer = new Producer(  );        producer.start(  );        new Consumer( producer ).start(  );    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -