【发布时间】:2016-05-19 10:50:10
【问题描述】:
【问题讨论】:
-
答案仍然是“否”。不要依赖 Singleton 的应用程序,从磁盘加载配置/数据
【问题讨论】:
没有。这是不可能的。
每个进程都在一个单独的地址空间中。一个进程看不到另一个进程地址空间中的任何内容。这适用于所有进程,而不仅仅是 Java 进程。
一个进程在另一个进程地址空间中查看某些内容的唯一方法是这两个进程是否有一个公共共享内存段。在 C / C++ 中,可以这样做......如果您小心 进程间 同步。
在 Java 中,共享内存的方法并不实用:
static 变量。类加载器没有帮助。一个java进程/地址空间中的类加载器将类加载到那个地址空间。其他进程看不到,也看不到对应的静态变量。
【讨论】:
您可以通过使用存储变量的数据库来做到这一点,并且所有 VM 实例都应针对这些变量读取和写入该库。
【讨论】: