gpt4 book ai didi

clojure - 使用 clojure 读取大型命令输出

转载 作者:行者123 更新时间:2023-12-02 14:53:50 25 4
gpt4 key购买 nike

我正在使用 clojure.java.shell 命令中的 sh 函数来读取命令的非常大的输出。输出约为 60meg 数据。

我不断收到 java.lang.OutOfMemoryError 错误。有没有办法打开一种管道,让我读取输出并将其解析为向量。就像命令输出的惰性序列一样?

基本上,数据是一个大的字节数组,我想将其转换为数字并放入向量中。

最佳答案

clojure.java.shell/sh 将始终返回非惰性字符串

在 BufferedReader 上使用惰性行序列的解决方案(不处理关闭、环境传递和编码):

(->> (.exec (Runtime/getRuntime) "YOUR_LONG_RUNNING_COMMAND ARG ...")
.getInputStream
clojure.java.io/reader
line-seq
(map YOUR-FUNCTION))

关于clojure - 使用 clojure 读取大型命令输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4071343/

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