gpt4 book ai didi

java: ByteArrayOutputStream.toByteArray() 性能

转载 作者:行者123 更新时间:2023-12-01 08:05:27 36 4
gpt4 key购买 nike

我正在将 poi 工作簿写入 ByteArrayOutputStream,以便获取字节并在肥皂消息中发送它们。

获取ByteArrayOutputStream很好,但是调用.toByteArray()非常慢并且占用大量CPU。
我尝试转换的工作簿非常大。

有人对我如何加快速度有任何建议吗?

谢谢你,杰森

最佳答案

您在创建 ByteArrayOutputStream 对象时是否声明了缓冲区大小?如果没有,您将花费时间来扩展缓冲区并在每次扩展时复制字节。在构造函数中设置所需的最终大小,您应该会看到大文件的速度有所提高。

来自 Oracle 文档:构造函数和描述

ByteArrayOutputStream()

创建一个新的字节数组输出流。

ByteArrayOutputStream(int size)

创建一个新的字节数组输出流,其缓冲区容量为指定大小(以字节为单位)。

关于java: ByteArrayOutputStream.toByteArray() 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22073949/

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