摘要: Object类中提供了用于线程通信的方法:wait()和notify(),notifyAll()。如果线程对一个指定的对象x发出一个wait()调用,该线程会暂停执行,此外,调用wait()的线程自动释放对象的锁,直到另一个线程对同一个指定的对象x发出一个notify()调用。为了让线程对一个对象调用wait()或notify(),线程必须锁定那个特定的对象。也就是说,只能在它们被调用的实例的同步块内使用wait()和notify()。根据以上内容,修改Person类如下:package com.itjob;public class Person { private String name = 阅读全文
posted @ 2012-03-12 15:28 JAVA教程 阅读(300) 评论(0) 推荐(0) 编辑
摘要: 先看线程不同步的情况://数据类package com.itjob;public class Person { private String name = "王非"; private String sex = "女"; public void put(String name, String sex) { this.name = name; this.sex = sex; } public void get() { System.out.println(name + "----->" + sex); } }//用来显示Person 阅读全文
posted @ 2012-03-12 15:26 JAVA教程 阅读(193) 评论(0) 推荐(0) 编辑
摘要: class TestThread { public static void main(String[] args) { Data data = new Data(); //创建四个线程 Thread thadd1 = new ThreadAdd(data, "thadd1"); Thread thadd2 = new ThreadAdd(data, "thadd2"); Thread thsub1 = new ThreadSub(data, "thsub1"); Thread thsub2 = new ThreadSub(data, 阅读全文
posted @ 2012-03-12 15:08 JAVA教程 阅读(278) 评论(0) 推荐(0) 编辑
摘要: class TestThread { public static void main(String[] args) { Data data = new Data(); //创建四个线程 Thread thadd1 = new ThreadAdd(data, "thadd1"); Thread thadd2 = new ThreadAdd(data, "thadd2"); Thread thsub1 = new ThreadSub(data, "thsub1"); Thread thsub2 = new ThreadSub(data, 阅读全文
posted @ 2012-03-12 15:06 JAVA教程 阅读(412) 评论(0) 推荐(0) 编辑
摘要: //减数据的线程class ThreadSub extends Thread { //线程所操作的关键数据 Data data; public ThreadSub(Data data, String name) { //给当前线程命名 super(name); this.data = data; } //线程执行时所调用的方法,即线程所执行的代码 public void run() { for (int i = 0; i < 20; i++) { data.sub(); //打印出哪个线程执行的加操作 System.out.println(Thread.currentThr... 阅读全文
posted @ 2012-03-12 15:05 JAVA教程 阅读(134) 评论(0) 推荐(0) 编辑
摘要: n创建数据类//数据类class Data { private int k; public void add() { k++; } public void sub() { k--; } public int getK() { return k; }}创建加数据的线程//加数据的线程class ThreadAdd extends Thread { //线程操作的数据 Data data; public ThreadAdd(Data data, String name) { //给当前线程命名 super(name); this.data = data; } //线程执行时所调用的方法... 阅读全文
posted @ 2012-03-12 15:04 JAVA教程 阅读(836) 评论(0) 推荐(0) 编辑