Возможно ли создать постоянный объект памяти за пределами памяти JVM, который может использоваться внутри JVM в качестве объекта, чтобы он выжил при перезагрузке JVM?Выделение памяти за пределы JVM и использование ее внутри JVM
Особая идея состоит в том, что мы можем выделить память вне JVM, а затем использовать интерфейс JNI для доступа к этой памяти и связать, скажем, с некоторым массивом Java.
Неужели кто-то попытается выполнить такой взлом? Любая зависимость от платформы была бы достаточной.
Например, это может помочь в оптимизации загрузки БД в памяти во время перезапуска процесса JVM.
Вы, конечно же, не сможете назначить его реальному массиву java, например 'float []' или так. Но вы * можете * использовать внешнюю выделенную память в java, возвращая ее как прямой [ByteBuffer] (https://docs.oracle.com/javase/8/docs/api/java/nio/ByteBuffer.html), который был созданный через JNI с помощью [NewDirectByteBuffer] (https://docs.oracle.com/javase/8/docs/technotes/guides/jni/spec/functions.html#NewDirectByteBuffer). Я не уверен, как выполнить выжидательную перезагрузку JVM (и не может разумно попробовать ее в данный момент), но ** если ** эта часть может быть решена, прямой «ByteBuffer», скорее всего, станет , – Marco13