Linux bash中的xmalloc错误
我通过ssh(通过bash)连接到一台运行以下代码的机器:Linux bash中的xmalloc错误,linux,bash,Linux,Bash,我通过ssh(通过bash)连接到一台运行以下代码的机器: for i in {1..100000000} do <something> done 它会让我退出ssh会话 这是在说什么alloc限制?我该如何增加它呢?您正在使用进程可以从可用内存获得的所有内存,比如7+GB,或者您达到了一个限制 ssh-remotebox'ulimit-a'命令将显示进程的限制-如果它显示内存是“无限制的”,则必须添加大量交换空间以增加虚拟内存。有关更多信息,请查看ulimit手册页 基本上,
for i in {1..100000000}
do
<something>
done
它会让我退出ssh会话
这是在说什么alloc限制?我该如何增加它呢?您正在使用进程可以从可用内存获得的所有内存,比如7+GB,或者您达到了一个限制
ssh-remotebox'ulimit-a'
命令将显示进程的限制-如果它显示内存是“无限制的”,则必须添加大量交换空间以增加虚拟内存。有关更多信息,请查看ulimit手册页
基本上,内部循环不会释放内存。如果希望循环完成,它应该这样做。这是问题的根本原因,可能不是ulimit设置。您知道将
{1..100000000}
表达式扩展为字符串需要多少字节吗?不要介意将其拆分为参数列表所需的额外解析开销。。。?我强烈建议你找到另一种方法来解决这个问题。这个答案是无用的。问题下面的评论就是答案。是的,这是一个更好的回答。
-bash: xmalloc: .././make_cmd.c:85: cannot allocate 16 bytes (7713447936 bytes allocated)