请稍等 ...
×

采纳答案成功!

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

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

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

正在回答

插入代码

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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
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下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号