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)