首页 > 代码库 > 设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1

设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1

 1 package zzg;
 2 
 3 public class ThreadTest {
 4 private int j;
 5 public static void main(String[] arge){
 6     ThreadTest t1 = new ThreadTest();
 7     Inc inc = t1.new Inc();
 8     Dec dec = t1.new Dec();
 9     for(int i=0;i<2;i++){
10         Thread t = new Thread(inc);
11         t.start();
12         t = new Thread(dec);
13         t.start();
14     }
15 }
16 private  synchronized void inc(){
17     j++;
18     System.out.println(Thread.currentThread().getName() + "-inc:" + j);
19 }
20 private synchronized void dec(){
21     j--;
22     System.out.println(Thread.currentThread().getName() + "-inc:" + j);
23 }
24 class Inc implements Runnable{
25     public  void run(){
26         for(int i=0;i<100;i++){
27             inc();
28         }
29     }
30 }
31 class Dec implements Runnable{
32     public void run(){
33         for(int i=0;i<100;i++){
34             dec();
35         }
36     }
37 }
38 }

 

设计4个线程,其中两个线程每次对j增加1,另外两个线程对j每次减少1