1 public class Test { 2 3 // 采用 Runnable 接口方式创建的多条线程可以共享实例属性 4 private int i ; 5 6 // 同步增加方法 7 private synchronized void inc(){ 8 i ++; 9 System. out .println(Thread.currentThread().getName()+ "--inc--" + i ); 10 } 11 // 同步减算方法 12 private synchronized void dec(){ 13 i --; 14 System. out .println(Thread.currentThread().getName()+ "--dec--" + i ); 15 } 16 //增加线程 17 class Inc implements Runnable { 18 public void run() { 19 inc(); 20 } 21 } 22 // 减算线程 23 class Dec implements Runnable{ 24 public void run() { 25 dec(); 26 } 27 } 28 public static void main(String[] args) { 29 Test t = new Test(); 30 // 内部类的实例化 31 Inc inc = t. new Inc(); 32 Dec dec = t. new Dec(); 33 // 创建 2*n 个线程 此处 n=2 34 for ( int i = 0; i < 2; i++) { 35 new Thread(inc).start(); 36 new Thread(dec).start(); 37 } 38 } 39 40 }
时间: 2024-10-06 00:10:52