ErlangのVMが、それは単に全体のVMをクラッシュメモリ不足の状況で実行されます。その理由は、それが最も簡単で安全なことです。
あなたはフォールトトレラントシステムが必要な場合は、すでに複数のコンピュータを持っている必要があります。 1台のコンピュータ(自律計算ユニット)でフォールトトレラントシステムを構築することはできません。したがって、アプリケーションがメモリ不足の状況で実行される場合、最も簡単なことは、VM全体がクラッシュするようにすることです。とにかくシステムにバグがあります。あなたが処理した1あなたがすることはできませんこれは、メモリ不足 - - すべてのエッジケースの取り扱い
が発生しやすい複雑すぎるとエラーになります。問題のプロセスを強制終了することは解決策ではありません。まず、問題となるプロセスは決定するのが難しいです。 「ランダム」(ヒューリスティックに決定された)プロセスをいくつか殺すことは解決策ではありません。ヒューリスティックによって殺されたプロセスが、偶発的な回復を引き起こすプロセスになる可能性があるからです。 VM全体を強制終了することは、最も単純なだけでなく、メモリ不足の状況を解決する唯一の合理的な解決策でもあります。
それは最も近代的な人気のある言語やOSに行われている方法は、あなたが信頼性の高いシステムを必要とする状況では間違いなく間違っています。デスクトップやそれほど厳格ではないが、Erlangが設計されているシステムでは絶対に受け入れられません。
も参照してください:なぜ大きなシーケンスでErlangがクラッシュするのですか?(http://stackoverflow.com/questions/192725/why-is-erlang-crashing-on-large-sequences) –