Показать сообщение отдельно
Старый 13.12.2006, 12:32   #17  
6apcyk is offline
6apcyk
Участник
 
57 / 11 (1) +
Регистрация: 17.08.2005
Тестирование метода InventTable::exist(...)
Решил протестировать всетаки.
Вот какая запускалась метода, такой большой перебор по номенклатуре для того, чтобы не использовать кэш.

X++:
static void Test_InventTableExist(Args _args)
{
    int         runTimes;
    int         counterItemId,
                time,
                itemIdLength    = 6;
    ItemId      curItemId;
    ;

    for(runTimes = 0; runTimes < 20; runTimes++)
    {
        time    = WinAPI::getTickCount();
        for(counterItemId = 1; counterItemId < 99999; counterItemId++)
        {
            curItemId   = int2Str(counterItemId);
            curItemId   = strrep("0", itemIdLength - strLen(curItemId)) + curItemId;
            InventTable::exist(curItemId);
        }
        info(strFmt("%1", WinAPI::getTickCount() - time));
    }
}
Вот результаты. Их следует читать снизу вверх так как выбрасовались в инфолог.
server static <-->static
144047 <-->152800
145289 <-->150006
146871 <-->150556
143727 <-->149615
149415 <-->150036
152629 <-->203893
158198 <-->255257
147482 <-->254897
143737 <-->232815
149244 <-->229189
174641 <-->226956
164527 <-->222520
175032 <-->217683
176173 <-->230852
171246 <-->237452
158649 <-->251481
182011 <-->247827
181631 <-->204254
177556 <-->224062
177876 <-->237311
Результаты не ахти, но покрайнеймере не говорят в пользу не использовать свойство server.