0

私のC++プログラムでは、デフォルトのメモリアロケータとしてgoogle-perftoolsのtcmalloc_minimalを使用しています。この情報を印刷します:なぜこのtcmallocエラーSbrkSysAllocatorが失敗しましたか?

src/system-alloc.cc:427] SbrkSysAllocator failed 

そして、プログラムは実行中です。それは問題ですか?

+0

メモリが不足している可能性がありますか?また、このスレッドによれば、バージョン1.7ではメッセージが表示されません(ただし、単に抑制されている可能性があります):https://groups.google.com/forum/#!topic/google-perftools/whCzU9KRbwc – gfour

答えて

0

デフォルトでは、tcmallocはsbrkを使用してカーネルからメモリを取得します。 メモリマッピングが衝突した場合にsbrk呼び出しが失敗し、tcmallocが純粋なmmapにフォールバックする可能性があります。 これは、メッセージが生成される瞬間です。

(アドレススペースを使い果たしていない限り)心配することはありません。