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

📄 testlinkedlist.java

📁 本书是一本为Java学习者在基础内容学习结束后进行课程设计时提供参考的指导书
💻 JAVA
字号:
package apibook.c2.s1;import java.util.*;public class TestLinkedList {  public TestLinkedList() {  }  public static void main(String[] args) {  	//创建一个链表对象    LinkedList l1 = new LinkedList();    //启动生产者线程    new producer(l1).start();    //启动消费者线程    new consumer(l1).start();    new consumer(l1).start();  }}class consumer extends Thread{//消费者线程  LinkedList list;  consumer(LinkedList l){    list= l;  }  public void run(){    try {      while (true) {      	//对该链表进行同步        synchronized(list){        	//链表为空,线程等待          while (list.isEmpty()) {             list.wait();          }          //消费链表中的第一个数          System.out.println(this+":"+list.removeFirst());        }      }    }    catch (Exception ex) {      ex.printStackTrace();    }  }}class producer extends Thread{//生产者线程  Random r = new Random();  LinkedList list;  producer(LinkedList l){    list=l;  }  public void run(){    int count=0;    try {      while (true) {      	//线程睡眠随机长度的时间        Thread.sleep(r.nextInt(2002));        //对链表进行同步        synchronized(list){        	//将产生的数加入链表中          list.addLast(new Integer(count++));          //唤醒消费者线程          list.notify();        }      }    }    catch (Exception ex) {      ex.printStackTrace();    }  }}

⌨️ 快捷键说明

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