anonymous
написал 24 июля 2004 года в 22:09 (794 просмотра)
Ведет себя
неопределенно; открыл 1814 темы в форуме, оставил 5575 комментариев на сайте.
У меня переодически происходит зависание программы при вызове new или malloc, из-за чего это может быть? У меня подозрение, что не хватает места в куче. Как бороться с такой проблемой?
Последние комментарии
- OlegL, 17 декабря в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
ecobeing.ru
Экология и вегетарианство на благо всем живым существам Планеты.
Скорее, битая память. Можно попробовать поставить всякие malloc библиотеки, типа ElectricFence или сделать банальный memtest86.
Если не хватает места в куче, то malloc (new) возвращает NULL.
Что есть Битая память?
«Битая», или же «сбойная» память — это содержащая то работающие, то не работающие участки память.
Т.е. представим, что есть у нас ячейка памяти, которая с вретояностью 100% при температуре < 27С записывает значения 0 и 1 правильно.
При температуре < 31С запись 0 — 100%, а 1 — 97%.
Ну а при бОльшей 35С температуре — уже < 95% и для 0, и для 1.
Вот это и есть «сбойная» память.