Почему JNI env (указатель интерфейса JNI) зависит от потока?JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Почему JNI env (указатель интерфейса JNI) зависит от потока?

Сообщение Anonymous »

Два сомнения из документации «Обзор дизайна JNI»:

Указатель интерфейса JNI действителен только в текущем потоке. Таким образом, собственный метод не должен передавать указатель интерфейса из одного потока в другой. Виртуальная машина, реализующая JNI, может выделять и хранить локальные данные потока в области, на которую указывает указатель интерфейса JNI.

JNI env(указатель интерфейса JNI) ) — это всего лишь указатель на указатель, который делает доступными через него функции JNI.
Тогда почему каждому потоку требуется собственный JNIEnv? Я просто хочу, чтобы JNIEnv имел доступ к функциям JNI, которые, как я полагаю, останутся одинаковыми для каждого потока. почему я должен получать JNIEnv для каждого потока конкретно?
еще один расплывчатый вопрос: что здесь означают эти строки:

ВМ может поддерживать две таблицы функций JNI:
одна выполняет тщательную проверку недопустимых аргументов и подходит для
отладки;
другой выполняет минимальный объем проверок, требуемый JNI
спецификация и, следовательно, более эффективна.

Означает ли это, что виртуальная машина Java может предоставлять две версии JNIEnv (указывающие на две разные таблицы функций) для потребитель, один из которых выполняет тщательную проверку аргументов, или это означает, что он внутренне использует две таблицы функций, я думаю, это означает последнее, но как потребитель может воспользоваться любыми преимуществами функции тщательной проверки недопустимых аргументов.
< п>Ссылка: https://docs.oracle.com/javase/7/docs/t ... ml#wp16696

Подробнее здесь: https://stackoverflow.com/questions/792 ... d-specific
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Почему JNI env (указатель интерфейса JNI) зависит от потока?
    Anonymous » » в форуме Android
    0 Ответы
    15 Просмотры
    Последнее сообщение Anonymous
  • Почему JNI env (указатель интерфейса JNI) зависит от потока?
    Anonymous » » в форуме JAVA
    0 Ответы
    20 Просмотры
    Последнее сообщение Anonymous
  • Почему JNI env (указатель интерфейса JNI) зависит от потока?
    Anonymous » » в форуме Android
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous
  • Почему JNI env (указатель интерфейса JNI) зависит от потока?
    Anonymous » » в форуме C++
    0 Ответы
    28 Просмотры
    Последнее сообщение Anonymous
  • Почему JNI env (указатель интерфейса JNI) зависит от потока?
    Anonymous » » в форуме Android
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous

Вернуться в «JAVA»