单身设计模式

时间:2011-04-20 20:35:26

标签: design-patterns

  

可能重复:
  How are singletons handled in a web application?

单例设计模式是为JVM创建单个实例还是为应用程序创建单个实例?

6 个答案:

答案 0 :(得分:2)

您可能会发现此SO thread useful

答案 1 :(得分:2)

这是每个正在运行的应用程序的单个实例

答案 2 :(得分:1)

Singleton设计模式通常在类级别实现,但可以在应用程序级别实现。我相信一次只能运行一个JVM实例。

答案 3 :(得分:1)

问题不明确。什么是“申请”?

Word或Excel等程序是应用程序,也是Apache Web服务器之一。

如果您有一些用Java实现的程序,通常每个程序都会启动自己的JVM ...... 通常强调

您可以轻松找到在同一JVM中运行多个应用程序的方法。例如。这是在“应用程序服务器”或“Web服务器”/ servlet容器中完成的。

如上所述:每个类加载器将有一个单例。

在应用程序服务器/应用程序容器/ Web容器中,每个“应用程序”都会获得自己的类别。因此,每个应用程序有一个单例(因为它的类加载器)。

如果您的JVM上只有一个应用程序或只有一个类加载器,那么您显然只有一个单例。

答案 4 :(得分:0)

它是一个正在运行的应用程序实例的单例实例。应用程序的每个运行实例都将获得自己的JVM。因此,实际上,每个JVM都有自己的单例实例。

答案 5 :(得分:0)

Singleton的实现基于使用方法(或.NET中的属性)创建一个类,如果尚不存在,则创建此类的实例。类的构造函数必须是私有的,以防止其他初始化方式。

有关详细信息,我建议您阅读此article.