Мои результаты
X++:
static void JobTestSpeed(Args _args)
{
int i;
void t1()
{
RContractTable RContractTable;
int start;
int end;
;
start = timenow();
while select * from RContractTable {}
end = timenow();
info("while " + time2str(end-start,1,1));
}
void t2()
{
RContractTable RContractTable;
int start;
int end;
QueryRun queryRun;
query query;
;
start = timenow();
query = new Query();
query.addDataSource(tablenum(RContractTable));
queryRun = new QueryRun(query);
while (queryRun.next())
{
RContractTable = queryRun.get(TableNum(RContractTable));
}
end = timenow();
info("queryRun " + time2str(end-start,1,1));
}
;
info(int642str((select count(RecId) from RContractTable).RecId));
for (i = 1; i <= 5; i++) t1();
for (i = 1; i <= 5; i++) t2();
for (i = 1; i <= 5; i++) {t1();t2();}
}
Цитата:
21291
while 00:00:35
while 00:00:32
while 00:00:36
while 00:00:36
while 00:00:33
queryRun 00:00:36
queryRun 00:00:35
queryRun 00:00:38
queryRun 00:00:37
queryRun 00:00:40
while 00:00:36
queryRun 00:00:38
while 00:00:37
queryRun 00:00:35
while 00:00:36
queryRun 00:00:34
while 00:00:32
queryRun 00:00:34
while 00:00:34
queryRun 00:00:34
Тестировал на живой базе. Так-что разброс есть, но в обе стороны и не 50%