在Java中使用非单例的单例时的性能影响?
发布时间:2020-12-15 04:54:56 所属栏目:Java 来源:网络整理
导读:假设有一个类的几个实例同时调用在单例类中定义的服务方法. 有人可以向我解释当一个方法在类中的某个其他实例已被执行时,在单例中调用方法时在低级别会发生什么?我认为JVM会阻止调用者,直到当前调用者完成该方法.这是正确的吗? 如果我们移动singleton类中
假设有一个类的几个实例同时调用在单例类中定义的服务方法.
有人可以向我解释当一个方法在类中的某个其他实例已被执行时,在单例中调用方法时在低级别会发生什么?我认为JVM会阻止调用者,直到当前调用者完成该方法.这是正确的吗? 如果我们移动singleton类中的一些方法在需要这样的方法的类中定义它们,它会提高性能吗? 如果将singleton更改为非单例,允许类的每个实例需要调用另一个类中的服务方法来创建自己的服务类实例,它会提高性能吗? 当然假设单身人士是无国籍的. 考虑多个线程在单例中调用服务方法的情况. 解决方法
通常,服务对象是单例并且是无状态的.所以对它没有影响.如果你有多个对象而不是每个类一个,那么我认为它会更多地填充堆.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |