【发布时间】:2016-03-16 16:31:33
【问题描述】:
我在后台有一个在 C++ 中运行的单独线程,我希望它能够发布代码以在另一个已经运行 android.os.Looper 的线程(例如主线程)上运行。通过“发布”,我的意思类似于View#post,其中Runnable 被排入队列以在事件循环上运行。将要执行的代码也是用 C++ 编写的。
我找到了 ALooper API (http://developer.android.com/ndk/reference/group___looper.html),但文档不是很好,我不清楚是否让 ALooper 与目标线程相关联、添加另一个 FD 并发出信号,这将使我的代码保持正确的顺序在相对于其他排队的 Runnables 的事件队列中。
我宁愿不必通过 Java 并获得 Handler 等。这似乎没有必要,因为我尝试运行的代码和发布它的代码都是用 c++ 编写的。
【问题讨论】:
-
什么意思?您能否更好地解释“能够发布代码以在另一个线程上运行”?
标签: android android-ndk