Java 使用android BitmapFactory.decodeByteArray垃圾收集解码MJPEG流

Java 使用android BitmapFactory.decodeByteArray垃圾收集解码MJPEG流,java,android,garbage-collection,Java,Android,Garbage Collection,我一次解码多个MJPEG流,由于android设备上的解码方式,BitmapFactory.decodeByteArray每次调用都会分配内存,这意味着垃圾收集必须超时工作。我希望能够手动控制内存,这样就可以重用同一个块,并减少垃圾收集器的运行时间,因为它对性能有很大的影响 有人有过这方面的经验吗 我目前正在使用这个电话 newBitmap = BitmapFactory.decodeByteArray(frameBuffer, 0, frameSize); 任何帮助都将不胜感激 谢谢Bitm

我一次解码多个MJPEG流,由于android设备上的解码方式,BitmapFactory.decodeByteArray每次调用都会分配内存,这意味着垃圾收集必须超时工作。我希望能够手动控制内存,这样就可以重用同一个块,并减少垃圾收集器的运行时间,因为它对性能有很大的影响

有人有过这方面的经验吗

我目前正在使用这个电话

newBitmap = BitmapFactory.decodeByteArray(frameBuffer, 0, frameSize);
任何帮助都将不胜感激


谢谢

BitmapFactory.decodeByteArray()可以采用额外的BitmapFactory.Options参数。如果将inBitmap字段设置为现有位图,它可能会重用位图对象。这可以大大减少垃圾收集

有关更多信息,请参阅本页的“使用现有位图”部分: