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으로 대체됩니다. 메시지가 생성되는 순간입니다.

걱정하지 않아도됩니다 (주소 공간이 부족하지 않은 한).