Инструменты пользователя

Инструменты сайта


axapta:управлениепамятью

Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

axapta:управлениепамятью [2018/04/13 22:43] (текущий)
Строка 1: Строка 1:
 +Раздел:​ [[Программирование | ]] > [[СредаИсполнения]]
 +----
 +В Axapta есть [[:​СборкаМусора]]. (Настраивается:​ Сервис\Параметры\Разработка\Критерий начала сборки мусора)
  
 +Менеджер памяти построен на основе библиотеки [[:​SmartHeap]],​ надо которой есть обёртка -- Класс/​HeapCheck
 +
 +
 +В Ax2009 от использования [[~SmartHeap]] отказались (поскольку даже SMP - версия была неидеальна с точки зрения работы с объектами синхронизации). В версии 2009 smartheap бlibrary был заменена на [[http://​msdn.microsoft.com/​en-us/​library/​aa366750(VS.85).aspx]],​ появившийся в Windows 2003.
 +
 +имеется Функция/​SmartHeapMemorySizeUp
 +<code XPP>
 +static void SmartHeap(Args _args)
 +{
 +  HeapCheck ​  hc;
 +  int         i, pageSize, newPageSize;​
 + ;
 +
 +  hc = new HeapCheck();​
 +  i = hc.poolCount();​
 +  while (i>0)
 +  {
 +      print 'Data for pool no = ' + int2str( i );
 +      print '​FixedBlockSize = ' + int2str( hc.fixedBlockSize(i) ) + '​SmallBlockSize = ' + int2str( hc.smallBlockSize(i) );
 +      pageSize = hc.pageSize(i);​
 +      if (pageSize < 32768)
 +      {
 +          newPageSize = 2 * pageSize;
 +          hc.pageSize( i, newPageSize );
 +      }
 +      else
 +          newPageSize = pageSize;
 +      print '​PageSize = ' + int2str( pageSize ) + '​PageSize = ' + int2str( newPageSize );
 +
 +      i--;
 +  }
 +  pause;
 +}
 +</​code>​
 +----
 +см. [[:​ФорумMazzy]]:​ [[http://​forum.mazzy.ru/​index.php?​showtopic=3374]]
 +  * [[AxForum:​5156]]
 +  * [[http://​axforum.info/​forums/​showthread.php?​p=184444]]
axapta/управлениепамятью.txt · Последние изменения: 2018/04/13 22:43 (внешнее изменение)