我使用
fetch
API 来执行 HTTP 请求。由于 HTTP 响应正文是二进制文件,因此我使用 response.arrayBuffer()
方法来获取字节形式的结果。
无论如何,当应用程序发出大量 HTTP 请求时,这种方法的性能不佳,因为每次调用 response.arrayBuffer
方法时,它都会返回 ArrayBuffer
的新实例。我没有找到任何解决方案来向 ArrayBuffer
方法提供我自己的 Response
实例以避免新的分配。
我可以遵循任何解决方案来让我的应用程序表现更好吗?
如果您担心为每个 HTTP 响应创建新的数组缓冲区实例对性能的影响,一种方法是为多个请求重用单个数组缓冲区。但是,请记住,重用相同的数组缓冲区需要仔细处理,以避免数据损坏或竞争条件。