Je travaille avec JNI et essaye de décharger (détruire) la machine virtuelle en utilisant la fonction DestoryJavaVM (la première méthode DetachCurrentThread). Il semble que cela a maintenant une influence sur la VM et il est toujours en hausse après l'appel. J'ai lu dans les vieux messages de Sun que DestoryJavaVM avait des problèmes dans le passé (JDK1.1-1.3 en 2001) mais j'utilise JRE 6 et cela devrait probablement fonctionner maintenant, non? J'ai besoin de charger \ Décharger une machine virtuelle dans le même processus de vie puisque chaque chargement nécessite le chargement d'autres classes. Des idées comment cela peut-il être fait?Comment décharger la JVM d'un processus vivant?
Informations complémentaires:
A la phase de déchargement je peux avec succès detachCurrentThread et destroyVM (à la fois retour JNI_OK). J'ai même FreeLibray (jvm.dll) réussi (return 1). Lorsque j'essaie de charger à nouveau la JVM, je peux LoadLibrary(), puis trouver la fonction CreateVM dans la DLL et l'appel à CreateVM échoue (return -1). Qu'est-ce que je fais mal ici?
Merci, Guy
+1 Bonnes alternatives. – trashgod
Je ne vais pas à la solution OSGi, désolé. S'il vous plaît voir les informations supplémentaires peut-être vous pouvez aider. – Guy