gpt4 book ai didi

java - 显然,如果已经存在很多 AssetFileDescriptors,则在 native 端的 Android 上创建文件会失败

转载 作者:行者123 更新时间:2023-11-28 05:17:22 25 4
gpt4 key购买 nike

出于基准测试目的,我重复从 Assets 加载数据并使用 Superpowered SDK 处理它。为了使用 Superpowered SDK 打开 Assets ,我在 Java 端创建了一个 AssetFileDescripter afd 并使用 apk 的路径进行 JNI 调用,afd.getStartOffset()afd.getLength() 作为参数。在此 JNI 函数中,我使用 SuperpoweredDecoder 加载 Assets 并创建一个新文件 (/storage/emulated/0/result.wav) 以保存结果。

问题是,当我在 Java 端的每个基准迭代中创建一个新的 AssetFileDescripter 时,使用 Superpowered 创建文件 /storage/emulated/0/result.wav SDK 在 971 次迭代后失败,或者大部分时间在 995 次迭代后失败。

如果我对所有迭代仅使用一个相同的 AssetFileDescripter,则一切正常,我可以进行 1000 次或更多次基准迭代。有人有想法吗? (我的测试机android版本是4.4.2)

如果有所有提示,我将不胜感激。

最佳答案

每次迭代后关闭 Assets 文件描述符解决了我的问题。关于打开的文件描述符,似乎确实存在与设备相关的限制。 (点击评论中的问题链接)

关于java - 显然,如果已经存在很多 AssetFileDescriptors,则在 native 端的 Android 上创建文件会失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42331529/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com