我目前在Mono (Mac OSX)上运行一个程序,该程序读取一个非常大的数据文件,并在聚合后创建摘要统计信息。但是,在程序的某个时刻,我突然收到以下错误消息:垃圾收集器无法为主堆区分配16384字节的内存。我本来希望能收到OOM异常或其他有助于解决问题的信息。我尝试通过设置 max-heap-size 为4g 来增加最大堆大小,但实际上它告诉我需要将它设置为整数。当我手动输入正确数量的零时,程序在执行开始时会导致gdb抛出错误。让我感到困扰的是,在代码中断的这个特定部分,计算机上应该有16384字节可用,我认为它应该能够很好地进行GC并获取更多内存。是否有任何人知道如何解决这个问题?