例1: 创建四个线程对同一个数据操作,其中两个线程对该数据执行加1操作,两个线程对该数据减1操作
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; } //线程执行时所调用的方法 public void run() { for (int i = 0; i < 20; i++) { data.add(); //打印出哪个线程执行的加操作 System.out.println(Thread.currentThread().getName() + " " + data.getK()); //每循环一次,让该线程中断5毫秒 try { Thread.sleep(5); } catch (Exception e) { e.printStackTrace(); } } } };
版权声明:本文为JAVA-itjob原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。