单例模式中生成的对象是否都要是无状态的?
假设我2个线程同时对某个单例模式生成的对象进行操作,也就是操作的是同一个对象,那岂不是会造成此对象内部状态的不一致?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
假设我2个线程同时对某个单例模式生成的对象进行操作,也就是操作的是同一个对象,那岂不是会造成此对象内部状态的不一致?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
单例模式必然伴随着多线程问题,你可以采用适当的锁机制来控制啊,或者
ThreadLocal
也是一种解决方案,具体问题具体分析,当然如果是无状态的类,就不用考虑这么多了。