按订单号(String常量池唯一,即对象唯一)加同步锁

package com.mmhlive.bdp.service;

public class TestLock implements Runnable{
	public static void main(String[] args) {
		TestLock tl1=new TestLock("th1");
		TestLock tl2=new TestLock("th2");
		new Thread(tl1).start();
		new Thread(tl2).start();
		
	}
	public TestLock(String name) {
		 this.name=name;
	}
	private String name;
	@Override
	public void run() {
 
		 synchronized ("orderId") {
			System.out.println(name);
			try {
				Thread.sleep(10000000);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		
	}

}
 

输出:th1


package com.mmhlive.bdp.service;

public class TestLock implements Runnable{
	public static void main(String[] args) {
		TestLock tl1=new TestLock("th1");
		TestLock tl2=new TestLock("th2");
		new Thread(tl1).start();
		new Thread(tl2).start();
		
	}
	public TestLock(String name) {
		 this.name=name;
	}
	private String name;
	@Override
	public void run() {
		 Object obj=new Object();
//		 synchronized ("orderId") {
			 synchronized (new String("orderId")) {
			System.out.println(name);
			try {
				Thread.sleep(10000000);
			} catch (InterruptedException e) {
				// TODO Auto-generated catch block
				e.printStackTrace();
			}
		}
		
	}

}
 

输出:

th1
th2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值