出于基准测试的目的,我重复从资产加载数据并使用 Superpowered SDK 处理它。为了使用 Superpowered SDK 打开资产,我AssetFileDescripter afd
在 java 端创建了一个并使用 apk 的路径afd.getStartOffset()
和afd.getLength()
参数进行 JNI 调用。在这个 JNI 函数中,我使用 SuperpoweredDecoder 加载资产并创建一个新文件 ( /storage/emulated/0/result.wav
) 以保存结果。
问题是,当我AssetFileDescripter
在 java 端的每个基准迭代中创建一个新文件/storage/emulated/0/result.wav
时,使用 Superpowered SDK 创建文件在 971 次迭代后失败,或者大多数情况下是 995 次迭代。
如果我AssetFileDescripter
在所有迭代中只使用一个相同的,那么一切正常,我可以进行 1000 次或更多的基准迭代。有人有想法吗?(我的测试设备的android版本是4.4.2)
我会感谢所有提示。