请教一个java基本的sigleton类的问题

markapril 2011-06-24 11:36:26
大家好,我问一下,有一种模式是sigleton模式,如下,
public class Sigleton {

private static Sigleton sig = new Sigleton();
private String name;

private Sigleton() {}

public static Sigleton getInstance() {
return sig;
}

public void setName(String name) {
this.name = name;
}

public String getName() {
return this.name;
}
}

我的疑惑就是,只有一个这个类的instance,当有多个线程获取到这个instance后,去调用setName设置同一个变量name,线程间不就有干扰了吗?谢谢。
...全文
113 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
若鱼1919 2011-06-24
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 ticmy 的回复:]
所以这里就不适合用单例模式
[/Quote]
有道理!
龙四 2011-06-24
  • 打赏
  • 举报
回复
所以这里就不适合用单例模式
飞跃颠峰 2011-06-24
  • 打赏
  • 举报
回复
是的,会有干扰。这时可能需要同步。

其实这也不光是跟singleton有关,任何多线程同时操作同一个实例对象都可能有干扰
皮皮 2011-06-24
  • 打赏
  • 举报
回复
是的就会干扰。

所以再进行setName时。要同步synchronized。

51,408

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧