java - Android 的 Java 和 C++ 之间的队列/取消队列

标签 java android c++ multithreading queue

是否有一种众所周知的方法在 Android 下的 Java 和 C++ 之间查询/取消队列数据?我试图通过我在 C++ 中执行的各个步骤向用户显示图像,但问题是每一步我都必须返回到 Java,然后再返回到 C++。

我想到了这种队列用法,但我不确定使用它是否是一件好事,甚至是否可以使用队列。在 Java 和 C++ 端。不同线程下的两个队列。一个线程 (C++) 插入队列,另一个 (Java) 从队列中移除。

感谢任何帮助。

最佳答案

在不使用 JNI 的情况下在 OpenJDK 上是可能的。 (事实上​​我有一个 OpenJDK/HotSPot 的实现)但是 AFAIK,你最终在 Android 的某个地方使用 JNI,因为它不使用 intrincis,即没有 JNI 访问堆外内存的能力。

Android 上的 JNI 真的那么贵吗?我原以为它只需要大约一微秒或更短的时间。

关于java - Android 的 Java 和 C++ 之间的队列/取消队列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24424337/

相关文章:

java - 如何在 android studio 中找到数组中项目的编号?

java - 在 osx "the import java.lang.invoke cannot be resolved"上构建 WALA

java - 我应该使用异常(exception)吗?

c++ - C++ 中的多重映射

c++ - 从文件opencv中读取视频

java - 我怎样才能加入 3 个实体 JPA?

android - 何时启动和停止应用内结算服务?

java - 无法访问 Activity 内的成员对象

android - 如何创建 Activity 对象

c++ - 三元运算符