17
|
C. Ross trotttrotttrott · 技术社区 · 14 年前 |
![]() |
1
8
您可以使用对文件系统上文件的独占访问来实现类似的行为。我不认为有什么类似于你提到的。 实例 |
![]() |
2
3
每次启动Java可执行文件时,都会启动Java虚拟机(JVM)的新实例。它们就像一个不同的工作站。这就是为什么Java中没有像系统互斥这样的东西。 |
![]() |
3
3
Java是一种最不常见的分母工具,它提供了所有运行的平台所通用的功能,也就是说,如果它已经被实现了。
在过去,我使用套接字来确保程序在运行时无法启动。
|
![]() |
4
0
如果您的操作系统提供了这些互斥体,那么您是否可以使用本机库?( http://en.wikipedia.org/wiki/Java_Native_Interface 当然,您将以OS特定的方式访问此资源,因此您将失去纯Java给您的可移植性。 |
![]() |
5
-1
记住Java是在Java虚拟机下运行的。像OS级同步机制一般只影响它运行的机器,本机Java同步机制只在该JVM中工作。 试图阻止启动多个JVM来做某些事情类似于试图阻止应用程序在多个物理机器上同时运行,这可能不值得做。 |