草庐IT

jvm-bytecode

全部标签

java - 如何从 JVM 卸载库 (DLL)

我需要卸载一个用System.loadLibrary(..)加载的DLL,有人知道这是否可行吗? 最佳答案 我没有这方面的经验,但是一点点挖掘表明,当加载库的类加载器被垃圾收集时,应该卸载该库。链接:InvocationAPIdocs(Sun)-lookfor"LibraryandVersionManagement"JavaJNIDLLUnloadingtutorial 关于java-如何从JVM卸载库(DLL),我们在StackOverflow上找到一个类似的问题:

java - 我如何知道为 Sun JVM 启用了哪些默认设置?

我想在我的JVM上尝试CompressedOops。不,我想知道它是否可以默认启用。我在debian/squeeze上运行这个jvm:$java-versionjavaversion"1.6.0_22"Java(TM)SERuntimeEnvironment(build1.6.0_22-b04)JavaHotSpot(TM)64-BitServerVM(build17.1-b03,mixedmode)有人说默认开启,有人说没有:来自:http://forums.yourkit.com/viewtopic.php?f=3&t=3185Yes,youareright,Ialsochecke

java - 我如何知道为 Sun JVM 启用了哪些默认设置?

我想在我的JVM上尝试CompressedOops。不,我想知道它是否可以默认启用。我在debian/squeeze上运行这个jvm:$java-versionjavaversion"1.6.0_22"Java(TM)SERuntimeEnvironment(build1.6.0_22-b04)JavaHotSpot(TM)64-BitServerVM(build17.1-b03,mixedmode)有人说默认开启,有人说没有:来自:http://forums.yourkit.com/viewtopic.php?f=3&t=3185Yes,youareright,Ialsochecke

java - 如何找出我的 JVM 支持什么算法 [加密]?

我正在使用Jasypt进行加密。这是我的代码:publicclassEncryptor{privatefinalstaticStandardPBEStringEncryptorpbeEncryptor=newStandardPBEStringEncryptor();privatefinalstaticStringPASSWORD="FBL";privatefinalstaticStringALGORITHM="PBEWithMD5AndTripleDES";static{pbeEncryptor.setPassword(PASSWORD);//pbeEncryptor.setAlgor

java - 如何找出我的 JVM 支持什么算法 [加密]?

我正在使用Jasypt进行加密。这是我的代码:publicclassEncryptor{privatefinalstaticStandardPBEStringEncryptorpbeEncryptor=newStandardPBEStringEncryptor();privatefinalstaticStringPASSWORD="FBL";privatefinalstaticStringALGORITHM="PBEWithMD5AndTripleDES";static{pbeEncryptor.setPassword(PASSWORD);//pbeEncryptor.setAlgor

java - 两个 JVM 之间的共享内存

在Java中有没有办法让两个JVM(在同一台物理机器上运行)使用/共享相同的内存地址空间?假设JVM-1中的生产者将消息放在特定的预定义内存位置,如果JVM-2上的消费者知道要查看哪个内存位置,是否可以检索消息? 最佳答案 解决方案1:我认为最好的解决方案是使用内存映射文件。这允许您在任意数量的进程(包括其他非Java程序)之间共享内存区域。您不能将java对象放入内存映射文件中,除非您将它们序列化。以下示例显示您可以在两个不同的进程之间进行通信,但您需要使其更加复杂以允许进程之间更好的通信。我建议你看看Java的NIOpackag

java - 两个 JVM 之间的共享内存

在Java中有没有办法让两个JVM(在同一台物理机器上运行)使用/共享相同的内存地址空间?假设JVM-1中的生产者将消息放在特定的预定义内存位置,如果JVM-2上的消费者知道要查看哪个内存位置,是否可以检索消息? 最佳答案 解决方案1:我认为最好的解决方案是使用内存映射文件。这允许您在任意数量的进程(包括其他非Java程序)之间共享内存区域。您不能将java对象放入内存映射文件中,除非您将它们序列化。以下示例显示您可以在两个不同的进程之间进行通信,但您需要使其更加复杂以允许进程之间更好的通信。我建议你看看Java的NIOpackag

java - Android Studio 无法在 Mac OSX (Mavericks) 上加载 JVM

我正在尝试在我的Mac上设置AndroidStudio。它正在运行OSX10.9.1Mavericks。我已经安装了最新的JDK(在编写1.7更新45时),并且我安装了AndroidStudio。我使用Java7是因为我必须运行一些Java应用程序,它们需要1.7。我没有安装Java1.6,因为它很古老。从任何启动器启动AndroidStudio实际上什么都不做。Activity管理器从不显示它正在运行。我不想安装Java1.6。我做了一些工作并尝试通过命令行通过包内容运行可执行文件,对于这两个可执行文件,我都收到以下消息:我不确定我应该如何解决这个错误。我在Mac上不是很熟练(对它来

java - Android Studio 无法在 Mac OSX (Mavericks) 上加载 JVM

我正在尝试在我的Mac上设置AndroidStudio。它正在运行OSX10.9.1Mavericks。我已经安装了最新的JDK(在编写1.7更新45时),并且我安装了AndroidStudio。我使用Java7是因为我必须运行一些Java应用程序,它们需要1.7。我没有安装Java1.6,因为它很古老。从任何启动器启动AndroidStudio实际上什么都不做。Activity管理器从不显示它正在运行。我不想安装Java1.6。我做了一些工作并尝试通过命令行通过包内容运行可执行文件,对于这两个可执行文件,我都收到以下消息:我不确定我应该如何解决这个错误。我在Mac上不是很熟练(对它来

java - 监控 JVM 的非堆内存使用情况

我们通常处理OutOfMemoryError问题是因为堆或permgen大小配置问题。但是所有的JVM内存都不是permgen或heap。据我了解,也可以和Threads/Stacks、nativeJVMcode有关……但是使用pmap我可以看到进程分配了9.3G,即3.3G堆外内存使用量。我想知道监控和调整这种额外的堆外内存消耗的可能性是什么。我不使用直接堆外内存访问(MaxDirectMemorySize默认为64m)Context:LoadtestingApplication:Solr/LuceneserverOS:UbuntuThreadcount:700Virtualizat