AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Администрирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 31.10.2007, 05:58   #1  
fed is offline
fed
Moderator
Аватар для fed
Ex AND Project
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
2,913 / 5736 (197) ++++++++++
Регистрация: 13.03.2002
Адрес: Hüfingen,DE
to gl00mie: В старину (кажется до версии 2.5Sp5) со smartheapом была следующая история: Почему-то он не давал использовать под переменные и буфера приложения всю свободную память. После того как у нас на одном проекте стало не хватать памяти для разноски большого журнала, из датского MBSа пришел кусочек кода, который сейчас лежит в Global::SmartHeapSizeUp(), с инструкцией "Запускать после запуска, перед какими-то глобальными операциями. Когда я стал разбираться с этим куском кода (я там всего не понял целиком - если честно) возникла примерно такая гипотеза - SmartHeap захватывает память у операционной системы кусками, которые называются в его терминологии страницами. (Это точно - я в хелпе по smartHeap проверил). Размер таблицы этих страниц, похоже что,ограничен какой-то константой. (Вот это уже мое предположение) Из за того что дефолтный размер страницы был небольшим, возникала ситуация при которой smartHeap просто не мог захватить нужный размер памяти. Функция smartHeapMemorySizeUp занимается как раз увеличением размера страницы до подходящего значения - чтобы на всю память таблицы хватило.

В начале этой страницы стоит не до конца мне понятный код, который рассчитывает число страниц на основании информации о физической памяти на компе. При этом он ОГРАНИЧИВАЕТ объем используемой памяти. То есть - там при рассчете стоит функция min() которая берет минимальное значение между объемом памяти в мегабайтах помноженным на 32 и 32768.

Смысл магического числа 32768 мне не совсем понятен. Есть подозрение, что если его заменить, например на 65536, то размер памяти, используемой системой - увеличится.
Хотя с другой стороны - есть шансы что это число там стоит не просто так и если его увеличить, что-нибудь в распределении памяти сломается.

Последний раз редактировалось fed; 31.10.2007 в 06:01.
Теги
ax3.0

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Рассылка писем в CRM: bug или я чего не понимаю? Alex2003 DAX: Программирование 2 18.06.2008 10:18
Ошибка в методе или я что-то не понимаю ? egorych DAX: Программирование 7 05.06.2008 15:02
Глюк orig() в 3-tier или я чего-то не понимаю? olesh DAX: Программирование 2 26.07.2007 13:09
не понимаю View Oleksandr DAX: Программирование 2 04.04.2007 11:32
Пробежался отладчиком по СВОДНОМУ планированию и ......... НЕ ПОНИМАЮ :( director DAX: Функционал 5 01.02.2006 14:05
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра
Комбинированный вид Комбинированный вид

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

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 21:55.