Java 什么是;xx个空闲字节和xx个直到OOM“;什么意思?

Java 什么是;xx个空闲字节和xx个直到OOM“;什么意思?,java,android,out-of-memory,Java,Android,Out Of Memory,我在我的Android应用程序java.lang.OutOfMemoryError中遇到了这样一个异常:在OOM之前,无法分配一个32字节的分配,其中包含0个可用字节和3GB。0个空闲字节意味着什么?而3GB?0个自由字节的意思正是所说的。在下一个OOM之前,我不明白的是3GB 我在Android源代码中找到了这个错误(在一些随机版本的Android中,我不确定是哪个) 我不确定增长限制是多少,但我很清楚这是最大堆大小 这是一个糟糕的答案,我从Android源代码中猜测,但这里没有其他内容,所

我在我的Android应用程序java.lang.OutOfMemoryError中遇到了这样一个异常:在OOM之前,无法分配一个32字节的分配,其中包含0个可用字节和3GB。0个空闲字节意味着什么?而3GB?

0个自由字节的意思正是所说的。在下一个OOM之前,我不明白的是
3GB

我在Android源代码中找到了这个错误(在一些随机版本的Android中,我不确定是哪个)

我不确定增长限制是多少,但我很清楚这是最大堆大小


这是一个糟糕的答案,我从Android源代码中猜测,但这里没有其他内容,所以我将发布它

您应该提供有关错误的代码。@KyleK我知道这是OOM,但不确定为什么有0个可用字节以及3GB意味着什么。
 oss << "Failed to allocate a " << byte_count << " byte allocation with " << 
 total_bytes_free
 << " free bytes and " << PrettySize(GetFreeMemoryUntilOOME()) << " until OOM";
// Returns approximately how much free memory we have until the next OOME happens.
size_t GetFreeMemoryUntilOOME() const {
  return growth_limit_ - GetBytesAllocated();
}