У меня есть отдельный поток, работающий на С++ в фоновом режиме, и я хочу, чтобы он мог отправлять код для запуска в другом потоке, который уже запускает android.os.Looper(например, основной поток). Под "post" я имею в виду нечто похожее на View#post
, где Runnable
помещается в очередь для запуска в цикле событий. Код, который будет выполнен, также написан на С++.
Я нашел API ALooper (http://developer.android.com/ndk/reference/group___looper.html), но документы невелики, и мне неясно, получает ли ALooper связанный с потоком адресата, добавление другого FD и сигнализация, это заставит мой код поддерживать правильный порядок в очереди событий по отношению к другим включенным Runnables.
Я бы предпочел не проходить через Java и получать Handler и т.д. - это просто кажется ненужным, поскольку и код, который я пытаюсь запустить, и код, который его отправляет, находятся в С++.