Модераторы: Daevaorn
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> собственный сборщик мусора, Имеет ли смысл??? 
:(
    Опции темы
Jcs
Дата 8.1.2004, 09:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 156
Регистрация: 1.10.2003

Репутация: нет
Всего: нет



Писал ли кто-нибудь свой распределитель памяти и сборщик мусора? Можно ли в своем распределителе использовать стандартный сборщик мусора (насколько я знаю, написать эффективный сборщик - задача довольно нетривиальная). Спасибо.
PM   Вверх
Hroft
Дата 8.1.2004, 11:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 310
Регистрация: 20.10.2003
Где: Москва

Репутация: нет
Всего: 3



На мой взгляд, не следует с этим вообще связываться. Есть книга Джеффа Элджера из серии "библиотека программиста", там это описано. Как я понимаю, ты именно ее и прочитал. Это имеет смысл при необычных требованиях к быстродействию, ведь кача размещается в стеке (!), где выделение происходит быстрее. А вообще обычно достаточно умных указателей, даже простых auto_ptr<>. Да, кстати, не знал, что хотя бы один из существующих компиляторов С++ поддерживает сборку мусора (это, как я понимаю, нахождение безымянных областей памяти и исправление неверных указателей). В яве есть, а в срр нету, по-моему.
PM MAIL ICQ   Вверх
DENNN
Дата 8.1.2004, 12:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 1
Всего: 43



Цитата
Да, кстати, не знал, что хотя бы один из существующих компиляторов С++ поддерживает сборку мусора

это потдерживает managed с++ из NET
PM ICQ   Вверх
Jcs
Дата 8.1.2004, 15:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 156
Регистрация: 1.10.2003

Репутация: нет
Всего: нет



Мне просто интересно, как они, эти встроенные сборщики работают (по скорости). Мне, к примеру, нужно чтобы все динамические объекты создавались в определенном банке памяти (для микропроцессорного варианта), с адреса а0 по аN. Да и стандартный менеджер слишком медленно работает с большим количеством маленьких объектов (создаваемых и удаляемых), поэтому подобная дилемма и возникла. А опыта работы со встроенным сборщиками практически нет. Вот и думаю как поступить.. Спасибо за отклик.
PM   Вверх
DENNN
Дата 8.1.2004, 16:00 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Участник Клуба
Сообщений: 3878
Регистрация: 27.3.2002
Где: Москва

Репутация: 1
Всего: 43



В таких случаях обычно пишут свой менеджер памяти, который берет на себя функции опреаторов new и delete - самое эффективное в данном случае решение. Тогда при запуске менежер захватывает в свой кеш большой кусок памяти и раздает ее из кеша.
PM ICQ   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0588 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.