java多线程实现轮流打印并且共享资源

问题一:实现两个线程对共享资源实现累加操作,并且不同的休眠时间,实现轮流打印。

public class myThread_01 {
	public static volatile double x1 = 0;

	public static void main(String[] args) {
		double x = 0;
		MyThread1 myThread1 = new MyThread1(300);
		MyThread1 myThread2 = new MyThread1(400);
		Thread t1 = new Thread(myThread1);
		Thread t2 = new Thread(myThread2);
		t1.start();
		t2.start();
	}
	
}

class MyThread1 implements Runnable {
    private long millis = 300;
	public MyThread1(long millis) {
		super();
		this.millis = millis;
	}

	@Override
	public void run() {
        try {
       		while(true){
        	    synchronized (myThread_01.class) {
        	      long before = System.currentTimeMillis();
        	      Thread.sleep(millis);
        	      long after = System.currentTimeMillis();
        	      System.out.println("消耗时间:"+String.valueOf(after-before));
        	      myThread_01.x1++;
          		  System.out.println(Thread.currentThread().getName()+"->x1:"+myThread_01.x1);
	      		  myThread_01.class.notify();
	    		  myThread_01.class.wait();
        	    }
			}
		} catch (InterruptedException e) {
			e.printStackTrace();
		}
	}
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

三日沐水

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值