请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

无状态的对象一定是线程安全的吗?

如果一个无状态对象中的一个方法调用一个其它类的静态方法,而这个静态方法是线程不安全的,那么无状态对象还是线程安全的吗?

正在回答

2回答

你好,我建议你能给出点伪代码分析,这样可以保证 我的解答 不会和你的理解 有太大出入。

正常这时候,对于这个无状态对象而言,他是线程安全的。

0 回复 有任何疑惑可以回复我~
  • 提问者 lulengfeng #1
    public class StaticClassTest{
        private static int count = 0;
    
        public static int addAndGet(){
            count ++;
            return count;
        }
    }
    
    public class StatelessClass{
    
        public int get(){
            return StaticClassTest.addAndGet();
        }
    }
    
    类似于上面两个类,第一个类是线程不安全的类,第二个类是无状态的类,那么第二个类是否是线程安全的?
    回复 有任何疑惑可以回复我~ 2018-06-12 09:06:17
  • 提问者 lulengfeng #2
    不好意思,代码格式没调好,请看上面我的回答的代码
    回复 有任何疑惑可以回复我~ 2018-06-12 09:08:26
  • Jimin 回复 提问者 lulengfeng #3
    这个代码,我想,你自己应该也明白,这个类是否线程安全并没什么意义,他去操作一个线程不安全的方法,可能会带来线程不安全的现象,这是肯定的。
    回复 有任何疑惑可以回复我~ 2018-06-12 09:12:46
提问者 lulengfeng 2018-06-12 09:07:30
public class StaticClassTest{
    private static int count = 0;

    public static int addAndGet(){
        count ++;
        return count;
    }
}

public class StatelessClass{

    public int get(){
        return StaticClassTest.addAndGet();
    }
}


0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信