只是为了确认。当通过opensl es for android创建的音频播放器完成缓冲区的播放时,垃圾收集器是否会自动释放该缓冲区?或者我需要自己释放缓冲区?
如果是后者,我需要一些帮助。但就目前而言,我不会张贴任何代码,直到我被告知我需要自己做…
最佳答案
缓冲队列实际上并不分配缓冲内存本身(或需要释放它),而是将指针传递到通过“enqueue”函数分配的内存。当你完成缓冲区播放后,你需要释放你分配的内存。
由于OpenSSL ES是C++中的本地库,它不知道垃圾收集,您为API分配的任何内存都必须由您释放,并且您创建的对象必须有“销毁”调用,以清除内部内存。