Russian Qt Forum
Ноябрь 25, 2024, 08:31 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: 1 2 3 [4]   Вниз
  Печать  
Автор Тема: Qt vs фрагментация памяти  (Прочитано 22002 раз)
Amigo_sa
Гость
« Ответ #45 : Май 05, 2010, 16:34 »

как раз с другом обсуждаем интересную вещь... я прислал ему код означенный выше, но он шарповец и куте установленного не имеет, поменял qLIST на stl::vector и чтоже?? количество элементов выделяемое в моем коде не уменьшается!!! я ради интереса тоде поменял кутешный список на стандартный и получил тот же результат... теперь мучаюсь непониманием, почему же указатели помещенные в список именно кутешный фрагментируют память...
Записан
whirlwind
Гость
« Ответ #46 : Май 05, 2010, 19:24 »

Бред

1. За счет выравнивания может так оказаться что Type1 и T равны, тогда никакой фрагментации не будет вообще
2. Зачем засовывать указатель в список? Он будет увеличиваться согласно своей стратегии расширения, stl-ный - согласно своей. И все это как-то будет есть память, искажая результаты эксперимента.
3. Попробуйте четко сформулировать, чего вы хотите добиться.
4. Если нужен конкретный результат (а не просто порассуждать с умным видом) то лучше экспериментировать на целевой платформе, с боевым компилятором, библиотеками и, желательно, похожими на боевые исходниками.
Записан
Igors
Джедай : наставник для всех
*******
Offline Offline

Сообщений: 11445


Просмотр профиля
« Ответ #47 : Май 07, 2010, 14:55 »

как раз с другом обсуждаем интересную вещь... я прислал ему код означенный выше, но он шарповец и куте установленного не имеет, поменял qLIST на stl::vector и чтоже?? количество элементов выделяемое в моем коде не уменьшается!!! я ради интереса тоде поменял кутешный список на стандартный и получил тот же результат... теперь мучаюсь непониманием, почему же указатели помещенные в список именно кутешный фрагментируют память...
Для хранения указателей QList, QVector и std::vector - все будут вести себя одинаково - выделять непрерывный массив, может только с разным пулом.
Записан
Страниц: 1 2 3 [4]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.132 секунд. Запросов: 23.