NDK / JNI: определение текущей темы

В собственном методе JNI существует ли способ узнать идентификатор текущего потока без вызова Java обратно? Также будет работать локальное хранилище.

EDIT: pthread.h присутствует в папке include NDK … Кто-нибудь знает, соответствуют ли потоки Java POSIX в реализации NDK?

Какой идентификатор вам интересен? Далк-нить Dalvik включает в себя следующее:

  "Main" prio = 5 tid = 1 TIMED_WAIT
   |  Group = "main" sCount = 1 dsCount = 0 obj = 0x40017730 self = 0x12798
   |  SysTid = 3167 nice = 0 sched = 0/0 cgrp = default handle = -2146114456
   |  Schedstat = (358850000 275073000 869) utm = 23 stm = 12 core = 0 

«Tid» – это идентификатор виртуальной машины. «Handle» – это pthread_t. «SysTid» – результат gettid () (идентификатор процесса Linux).

Идентификатор потока libcore (полученный из java.lang.Thread.getId ()) не отображается.

(Вы можете получить вышеуказанное значение с помощью «adb shell kill -3». Выходные данные идут в общий файл, определенный свойством dalvik.vm.stack-trace-file – обычно /data/anr/traces.txt, но это Зависит от устройства.)

EDIT: Каждый поток Dalvik VM – это pthread Linux. Сценарий gettid () даст вам уникальный идентификатор для каждого потока. Кроме того, вы можете добавить идентификационную информацию в TLS в java.lang.Thread или pthread_key.

Intereting Posts
Как автовоспроизвести HTML5 mp4-видео на Android? Как я могу получить правильные DisplayMetrics из AppWidget в Android? Android-карты: как определить центр карты после завершения перетаскивания Наложение псевдоним Android WebView Сделать изображение на половине экрана Как включить автоматический импорт в Android Studio 1.2x Не удалось удалить подписку в приложении из моей консоли разработчика Google Play Сделать EditText намеком на все колпачки Вы должны использовать тему Theme.AppCompat (или потомка) с этим действием после добавления сервисов google-play Как изменить цвет текста, текста и кнопок в материале AlertDialog и ProgressDialog Ошибка подключения Cordova Facebook Connect при запуске Android BLE: onServicesDiscovered никогда не срабатывает на Nexus 5 или Samsung Note 3 Как разрешить только отдельные фрагменты в ViewPager CoordinatorLayout? Как использовать кинжал в проекте библиотеки Android Некоторые фрагменты теряются при вращении