在某些情况下,调用append()会触发内存不足的恐慌,似乎append()本身不会返回nil.
我怎么能避免这种恐慌情景并向我的用户显示"资源暂时不可用"?
最好的祝福,
你不能.
如果运行时无法为追加分配内存,则可能无法恢复或向用户传达"资源临时不可用".例如,GC可能需要分配以进行清理,或者调度程序可能正在尝试分配新线程.因为没有办法严格控制Go程序中的分配,所以没有办法优雅地处理内存不足.
所有OOM条件终止Go程序.
| 归档时间: |
|
| 查看次数: |
1075 次 |
| 最近记录: |