gpt4 book ai didi

java - BufferedInputStream 在 Android 中引发内存不足错误

转载 作者:行者123 更新时间:2023-11-29 06:07:07 25 4
gpt4 key购买 nike

我正在尝试使用 BufferedInputStream 加载外部 DICOM 文件,但它最终耗尽了内存。当我使用 InputStream 时,这从来没有出现过(我在通过 assets 文件夹加载文件时出现了这个问题)。

我创建了自己的生产者-消费者线程来缓冲文件,所以我实际上不需要 BufferedInputStream,但我确实需要使用 mark()reset()FileInputStream 中不可用。

我应该如何解决这个问题?是否有另一种 InputStream 可以与具有 mark()/reset()File 一起使用> 功能?我可以在 BufferedInputStream 抛出错误之前以某种方式清空缓冲区吗?或者我应该找到一种方法来代替使用 mark() 吗?

感谢您的输入。

最佳答案

要使 markreset 与缓冲输入一起工作,markreset 之间的文件点需要留在内存中。

解决方法取决于您实际尝试做什么;如果您只需要从已知位置开始读取,可能是 RandomAccessFile

关于java - BufferedInputStream 在 Android 中引发内存不足错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8185611/

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