锁-lock.intern()
Posted karbon
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了锁-lock.intern()相关的知识,希望对你有一定的参考价值。
为什么要使用lock.intern(),直接lock有什么问题?
如果锁的字符串是new的方式生成,虽然字符串的内容一致,但是,如果不使用intern的话,可能是比较两个字符串的引用,这个是不一致的。就会导致上锁无效。
public class TestIntern { public static void main(String[] args) { String a = "abc"+123; String b = "abc"+123; String c = new String("abc"+123); String d = new String("abc"+123).intern(); // System.out.println(a==b); // System.out.println(a.equals(b)); System.out.println(a.equals(c)); System.out.println(a==c); System.out.println(a.equals(d)); System.out.println(a==d); } }
以上是关于锁-lock.intern()的主要内容,如果未能解决你的问题,请参考以下文章