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

时间:2024-04-15 20:09:28

题目:设计 4 个线程,其中两个线程每次对 j 增加 1 ,另外两个线程对 j 每次减少 1 。写出程序。

代码实现

public class ThreadTest{

	private int j;

	class Inc implements Runnable{
@Override
public void run() {
// TODO Auto-generated method stub
for(int i=0;i<100;i++) {
inc();
}
}
} // 相加操作
private synchronized void inc() {
// TODO Auto-generated method stub
j++;
System.out.println(Thread.currentThread().getName() + "-inc:"+j);
} class Dec implements Runnable{
@Override
public void run() {
// TODO Auto-generated method stub
for(int i=0;i<100;i++) {
dec();
}
}
} // 相减操作
private synchronized void dec() {
// TODO Auto-generated method stub
j--;
System.out.println(Thread.currentThread().getName() + "-dec:"+j);
} public static void main(String[] args) { ThreadTest thread = new ThreadTest();
Inc inc = thread.new Inc();
Dec dec = thread.new Dec();
for(int i=0;i<2;i++) {
Thread t = new Thread(inc);
t.start();
t = new Thread(dec);
t.start();
} } }