Решил протестировать всетаки.
Вот какая запускалась метода, такой большой перебор по номенклатуре для того, чтобы не использовать кэш.
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.