gpt4 book ai didi

java - 为什么出于性能原因传递大字符串作为返回类型不好?

转载 作者:塔克拉玛干 更新时间:2023-11-03 06:25:29 25 4
gpt4 key购买 nike

我正在开发一项功能,该功能可获取数据并将其存储在默认目录中的文件中,最后,我们需要以某种数据结构的形式从文件中传递数据。

在这一点上,它决定不使用 string array 因为传回超过 4mb 的数据会降低我们的性能。但是虽然这么说,但我不明白这会给我们带来什么性能损失?

Hashmap 还在底层使用了一个 array,这就是我们要进行的工作。

最佳答案

问题不在于返回一个可能很大的结果,性能问题源于产生调用者实际上可能并不真正需要的一个大结果。

一个例子是 Class.getResource() 系列调用。想象一下,它们不是 URL 或 Stream,而是被设计为返回带有实际数据的 byte[]。现在对于拥有大量媒体资源的多媒体应用程序来说,这将是致命的;对于简单地获取媒体资源的 header 信息,调用实际上会导致整个资源被拉入内存,实际使用第一个 KB 中的一些,其余的将被丢弃。很明显,这是对内存和处理时间的浪费。

所以一个大的结果可能导致白费了很多工作。

关于java - 为什么出于性能原因传递大字符串作为返回类型不好?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26511165/

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