问题来自论坛,
http://topic.youkuaiyun.com/u/20090927/23/497372f4-af98-4b7b-8489-3eb3a8de43b5.html
其代码如下:
具体的错误我已经在代码里标注出来了。
单例,就是系统只有一份实例,那么多个线程使用这一个实例,当然也就同时使用这一个StringBuffer了。
大家一起胡乱的往里面倾倒垃圾,怎么可能不混乱呢!
解决方法就是将StringBuffer做成局部变量
本文探讨了在Java中使用单例模式时遇到的线程安全问题,特别是针对StringBuffer对象在多线程环境下被多个线程同时访问时引发的数据混乱问题。通过将StringBuffer从实例变量改为局部变量,并将其作为参数传递给递归方法,有效解决了线程安全问题。
问题来自论坛,
http://topic.youkuaiyun.com/u/20090927/23/497372f4-af98-4b7b-8489-3eb3a8de43b5.html
其代码如下:
具体的错误我已经在代码里标注出来了。
单例,就是系统只有一份实例,那么多个线程使用这一个实例,当然也就同时使用这一个StringBuffer了。
大家一起胡乱的往里面倾倒垃圾,怎么可能不混乱呢!
解决方法就是将StringBuffer做成局部变量