java培训
搜索分类

ynchronized(tring)_java培训

赋能网 2023-06-13 285

synchronized(string)

String是java中的一种特殊类型,String在jdk中创建后共享常量池,即使在jdk1.8之后实现了不同的功能,它的功能也是相似的。

利用这个特征,可以使用String作为同步锁。例如,在更新用户信息时,可以使用用户的名称作为同步锁,不同的用户可以使用不同的锁来提高并发性能。这个特征扩展适当的场景非常多。

ynchro<em></em>nized(tring)_<a href=java培训" title="ynchronized(tring)_java培训">

在Jvm中具有String常量池缓存的功能

   String s1 = “a”;

   String s2 = “a”;

ynchro<em></em>nized(tring)_java培训

   System.out.println(s1 == s2);//true

字符串常量池中的字符串只有个一个“a”,所以此时锁的是同一个对象。

只不过正因为String的特殊性,java还包含了更多的与字符串相关的工具类,如StringBuffer、StringBuilder等。而且字符串映射的值是常量,但是String本身是可以new出来类似一个变量使用的。这些情况就会影响线程的同步了。

想要了解跟多关于Java培训课程内容欢迎关注赋能网Java培训,赋能网除了这些技术文章外还有免费的高质量Java培训课程视频供广大学员下载学习

发表评论
0评