`
uusoft
  • 浏览: 10610 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

多线程

    博客分类:
  • j2se
 
阅读更多

创建四个线程,两个线程运行加法运算,两个线程运行减法操作
public class FourThread
{
	public static void main(String args[])
	{
        Res r=new Res();
		Add add=new Add(r);
		Mul mul=new Mul(r);
		Thread t1=new Thread(add);
		Thread t2=new Thread(add);
		Thread t3=new Thread(mul);
		Thread t4=new Thread(mul);
		t1.setName("加法线程A");
		t2.setName("加法线程B");
		t3.setName("减法线程C");
		t4.setName("减法线程D");

		t1.start();
		t2.start();
		t3.start();
		t4.start();
	}
}


class Res
{
	private int number=100;
	public synchronized void add()
	{
		System.out.println(Thread.currentThread().getName()+"进行加法运算number="+(++number));
	}

	public synchronized void mul()
	{
		System.out.println(Thread.currentThread().getName()+"进行减法运算number="+(--number));
	}
}

class Add implements Runnable
{
	Res r;
	public Add(Res r)
	{
      this.r=r;
	}

	public void run()
	{   
		while(true)
		{
			try{Thread.sleep(10);}catch(Exception e){}
		    r.add();
		}
	}

}


class Mul implements Runnable
{
	Res r;
	public Mul(Res r)
	{
      this.r=r;
	}

	public void run()
	{   
		while(true)
		{
			try{Thread.sleep(10);}catch(Exception e){}
		    r.mul();
		}
		
	}

}
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics