使用guava进行对字符串的加锁

Posted 大招无限

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用guava进行对字符串的加锁相关的知识,希望对你有一定的参考价值。

java的synchronized关键字是堆某对象加锁,但是我们当需要对某个字符串加锁怎么办

比如对同一个订单只能有一个操作,但是对其他订单的操作不影响

 

使用 guava包下的  Interner 类

 private static final Interner<String> pool = Interners.newWeakInterner();

synchronized ( pool.intern("Order_"+orderId)){

//TODO:something

}

 

以上是关于使用guava进行对字符串的加锁的主要内容,如果未能解决你的问题,请参考以下文章

MySQL普通索引的加锁

ORACLE用户的加锁解锁

AQS系列- ReentrantReadWriteLock读写锁的加锁

使用Guava retryer优雅的实现接口重试机制

并发下常见的加锁及锁的PHP具体实现-转载

关于JAVA里的加锁synchronized