Android 为什么对冰淇淋三明治的缓冲区做了这样的改变?
有谁能帮我理解这个“修复”: 这导致我的运动jpeg(mjpg,mjpeg)代码在我阅读jpg图像时速度减慢。修复对我来说似乎很可怕,完全忽略传递的参数,因此调用方没有机会调整值 是否有办法解决此更改,以便使用更大的缓冲区大小?来自提交日志: 让ApacheHttpClient与大型内核套接字缓冲区配合使用 给定内核套接字可能设置的最大大小 LTE设备上的缓冲区,我们需要阻止Apache HttpClient 在堆上为每个堆分配该大小的整数倍 插座在一台设备上,16个HTTP连接将填满堆 这基本上意味着Android不信任LTE设备来设置它们自己的缓冲区大小,因为它会过快地填满堆Android 为什么对冰淇淋三明治的缓冲区做了这样的改变?,android,apache,Android,Apache,有谁能帮我理解这个“修复”: 这导致我的运动jpeg(mjpg,mjpeg)代码在我阅读jpg图像时速度减慢。修复对我来说似乎很可怕,完全忽略传递的参数,因此调用方没有机会调整值 是否有办法解决此更改,以便使用更大的缓冲区大小?来自提交日志: 让ApacheHttpClient与大型内核套接字缓冲区配合使用 给定内核套接字可能设置的最大大小 LTE设备上的缓冲区,我们需要阻止Apache HttpClient 在堆上为每个堆分配该大小的整数倍 插座在一台设备上,16个HTTP连接将填满堆 这基
作为一种解决方法,请尝试扩展
AbstractSessionInputBuffer
,以创建自己版本的SocketInputBuffer
类。这显示了如何替换会话输入缓冲区(在本例中用于日志记录),请参阅受保护的SessionInputBuffer createSessionInputBuffer的覆盖。感谢您的解决方案建议。我可以试试,但看起来可能会很复杂。我正在调用DefaultHttpClient::Execute(),它将引导我完成十几个调用,最后进入SocketInputBuffer()构造函数。似乎我必须将几个类复制到我的项目中才能完成,因为我不认为我可以简单地重写函数。现在我已经到了这样的地步,因为我不再使用这些类,所以我错过了对这些类的任何改进。我希望代码中有一个简单的钩子。