Все примеры, которые я нашел до сих пор для вызова функции Java из C, показать, как сначала создать JVM из C. Но в моем случае приложение начинается с Java, а функция C вызывается из Java.
возможно ли, чтобы создать «нативный» метод, реализованный в C, и использовать его для сохранения указателя Jnienv < /code>, а затем повторно использовать его, вместо этого, вместо этого, вместо этого использовать его, чтобы повторно использовать Создание нового экземпляра JVM из C, чтобы вызвать методы Java? < /p>
Есть ли пример для него? edit:
, кто читает этот поток Из текущего звонка JNI! Не сохраняйте и повторно используйте какой -либо указатель jnienv*, который вы получали раньше, если вы не хотите, чтобы ваша программа сбоя. Лучший сценарий разбил ваше приложение. Код> экземпляр должен быть кэширован, поскольку, если ваша программа начинается с Java, то ваш C -код в любом случае сможет выполнять только как нативный метод Java, то его реализация C всегда получает соответствующий Jnienv* экземпляр . Это единственный экземпляр, который вы должны использовать, пока ваш родной метод не вернется, а не какой -либо старый сохраненный экземпляр.
Подробнее здесь: https://stackoverflow.com/questions/484 ... jvm-from-c
Вызов Java Methods из C без запуска JVM с C [закрыто] ⇐ JAVA
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Класс не найден. Исключение — org.apache.http.client.methods.HttpRequestBase.
Anonymous » » в форуме JAVA - 0 Ответы
- 25 Просмотры
-
Последнее сообщение Anonymous
-