java的synchronized关键字是堆某对象加锁,但是我们当需要对某个字符串加锁怎么办
比如对同一个订单只能有一个操作,但是对其他订单的操作不影响
使用 guava包下的 Interner 类
private static final Interner<String> pool = Interners.newWeakInterner(); synchronized ( pool.intern("Order_"+orderId)){ //TODO:something }
java的synchronized关键字是堆某对象加锁,但是我们当需要对某个字符串加锁怎么办
比如对同一个订单只能有一个操作,但是对其他订单的操作不影响
使用 guava包下的 Interner 类
private static final Interner<String> pool = Interners.newWeakInterner(); synchronized ( pool.intern("Order_"+orderId)){ //TODO:something }
本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。