OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Воскресенье, 28 Апрель, 2024 19:41

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 82 ]  На страницу Пред.  1, 2, 3, 4, 5
Автор Сообщение
 Заголовок сообщения:
СообщениеДобавлено: Пятница, 08 Сентябрь, 2006 08:37 

Зарегистрирован: Суббота, 26 Ноябрь, 2005 18:38
Сообщения: 1857
Илья Ермаков писал(а):
Сделать аналог поколений (хотя это слово уже не подойдет) не на уровне экземпляров, а на уровне типов.


Но это не избавляет от необходимость модифицировать компилятор так, чтобы при присваивании такого объекта полю объекта другого поколения, генерился специальный код?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: Пятница, 08 Сентябрь, 2006 12:07 
Модератор
Аватара пользователя

Зарегистрирован: Понедельник, 14 Ноябрь, 2005 18:39
Сообщения: 9459
Откуда: Россия, Орёл
Это один из вариантов решений, самый лучший по эффекту.
Однако я думаю пойти на компромисс и позволить загрузчику контроллировать, чтобы типы-агрегаты просто всегда были в том же или более младшем "поколении". Естественно, оптимизация будет уже не такой эффективной, т.к. часть легких объектов перетянет с собой тяжелые, либо наоборот (решение в каждом конкретном случае загрузчик должен принимать по некоторым критериям.... По каким? Пока не знаю... Надо думать.) Однако эффект все равно будет, и довольно заметный, я думаю. Надо пробовать... Оверхеда во время выполнения на диспетчер памяти не будет, т.к. раскидка типов по уровням выполняется один раз в момент загрузки модуля(ей). Перемещать объекты из поколения в поколение, как при экземплярном подходе, тоже не требуется. (Я вообще настороженно отношусь к идее перемещать объекты в памяти с обновлением всех указателей, как это делается в .NET.)


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 82 ]  На страницу Пред.  1, 2, 3, 4, 5

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2005-2024, участники конференции «OberonCore», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Без разрешения участников и ссылки на конференцию «OberonCore» любое воспроизведение и/или копирование высказываний полностью и/или по частям запрещено.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB