![]() |
Модераторы: Daevaorn |
![]() ![]() ![]() |
|
crazylam |
|
|||
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 19.5.2007 Репутация: нет Всего: нет |
Здравствуйте!
Есть проблема.. очень срочная большая проблема. В большом проекте на С++ вдруг стали возникать странные баги с выделением памяти, с хипом,.... Периодически выбрасываются ексепшены на операторах new и delete (типа памяти мало), malloc может 0 вдруг вернуть, std:vector<>.push_back() (и pop_back тоже) не работает иногда... Было бы очень кстати, если бы кто-нибудь, у кого встречалась такая проблема, описал бы СВОИ (не обязательно наши ![]() Зарание спасибо... |
|||
|
||||
vinter |
|
|||
![]() Explorer ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2735 Регистрация: 1.4.2006 Где: Н.Новгород Репутация: 13 Всего: 56 |
компилятор, код
|
|||
|
||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
Думаю все просто. Есть утечка памяти и через 2 часа вся память (в т.ч. и виртуальная) подходит к концу. Вот тогда и начинает malloc выдавать 0... еще возможен вариант сильной фрагментации памяти. Но я никогда такого не встречал.
|
|||
|
||||
Daevaorn |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2155 Регистрация: 29.11.2004 Где: Москва Репутация: 51 Всего: 70 |
||||
|
||||
threef |
|
|||
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 375 Регистрация: 27.10.2005 Где: Запорожье Репутация: 9 Всего: 10 |
Из вышесказанного можно только разве посоветовать:
раздели тематически свои переменные на группы, для каждой используй отдельный менеджер памяти. Как только группа выбывает - уничтожай менеджер. Обрати внимание на сказанноеDaevaorn, смешение стилей , конечно же - плохой стиль ;) |
|||
|
||||
bsa |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9185 Регистрация: 6.4.2006 Где: Москва, Россия Репутация: 63 Всего: 196 |
Если не ошибаюсь, это называется pool. Есть уже готовые, например: http://www.boost.org/libs/pool/doc/index.html |
|||
|
||||
![]() ![]() ![]() |
Правила форума "С++:Общие вопросы" | |
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |