我正在移植一个已经用 C++ 编写的应用程序,以便在 Linux 上运行,该应用程序现在需要在 Android 设备上运行。它是一个 GPU 密集型应用程序,可以进行 OpenCL 调用,运行一组测试。这些可能需要几个小时或几天才能完成运行。
我有一个 Java Activity,它读取一些基本输入,然后将其传递给 JNI。
它对于较短的操作运行良好,但超过几秒钟就会暂停;我可以取消它的暂停,它会继续运行,但是每隔一百左右的操作它就会严重挂起(需要一分钟而不是一秒钟)。
我在Android知识方面缺乏什么,我忽略了一些可能导致这种情况的严重谬误吗?将所有代码移至 NativeActivity 是否更有意义?或者我是否只需要不时调用 Java 来显示某些内容以防止操作系统将我关闭?
感谢任何有耐心回答我问题的人