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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 16.02.2017, 18:07   #1  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,984 / 3273 (117) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
Основные выводы :
1. Старый способ упаковки-распаковки через X++ методы (как в Global классе 2009-й версии) никуда не годятся и тормозят (примерно в 100 раз медленнее чем методы ядра). Ну это и так было очевидно.

2. Способ упаковки/распаковки
con = [salesTable]
salesTable = conPeek(con, 1)
[salesTable] = con
очень быстрый - примерно такой же по скорости как и новые методы ядра введенные в 2012-й версии. (Правда содержит неприятный баг при упаковке наследуемых табличек. Подробности тут sashanazarov: Table inheritance and collection objects)
В связи с этим непонятно чем так гордились (https://blogs.msdn.microsoft.com/axp...amics-ax-2012/) разработчики ядра 2012-й версии - время упаковки распаковки практически не изменилось. Или они сравнивали с x++ методами ?

3. С учетом наличия багов в 2012-й версии лучше использовать новый метод (вызовы con2buf и buf2con прямо на буфере).

4. В 2012-й вызов Global::con2Buf() может раза в 1,5-2 проигрывать по скорости вызову buffer.conbuf() (вероятно из-за пересоздания объектов и обращения к Dict классам)

5. Если наследования табличек нет, то при переходе с 2009-й на 2012-ю можно оставить старый способ паковки распаковки буферов в контейнер (con = [buffer] и buffer = conPeek(con,1). Соответственно, сэкономить время на переделку кода. Старый способ упаковки имеет еще преимущество при отладке, так как в отладчике видно содержимое контейнера и можно посмотреть все поля буфера. А новый способ покажет обычный blob по которому ничего непонятно.

Последний раз редактировалось Logger; 16.02.2017 в 18:17.
За это сообщение автора поблагодарили: raz (10), Raven Melancholic (5), -DocSerzh- (1), _scorp_ (5).
Теги
ax2012, buf2con, con2buf, container, контейнер, производительность

 

Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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