SysStopwatch – это класс-обёртка над таймером System.Diagnostics.Stopwatch. Класс написан на X++ в Microsoft Dynamics AX 2009, Microsoft Dynamics AX 2012 и Axapta 4.0.
Класс SysStopwatch позволяет создавать, запускать и останавливать таймеры из Аксапты, получать строку со временем работы, а также обращаться к методам .net-объекта Stopwatch.
Быстрый и эффективный класс SysStopwatch:
- не задействует метод
new(), поэтому можно спокойно использоватьclassFactory.createClass()и другие фабрики - служебные объекты создаются в памяти только по необходимости
- содержит минимум вычислений на
X++, форматирование и преобразование в строку выполняется в.net - скрывает взаимодействие с CLR - программист может просто использовать
X++класс в своем коде - метод
stopwatch()возвращает CLR-объект - программист может получить доступ ко всей функциональности .net-объекта - метод
toString()позволяет видеть время выполнения в отладчике
static void SysStopwatchDemo(Args _args)
{
SysStopwatch timer = SysStopwatch::startNew();
setprefix(funcname());
sleep(1500);
info(strfmt("Elapsed: %1", timer.elapsed()));
info(strfmt("Elapsed: %1", timer.elapsedWide()));
}Буду признателен за ваши замечания, предложения и советы по проекту как в разделе Issues, так и в виде письма на адрес mazzy@mazzy.ru
Мазуркин Сергей (mazzy)
