30 июня 2010 г. 16:16 пользователь Dmitry Karasik <[email protected]> написал: > On Wed, Jun 30, 2010 at 03:56:58PM +0400, Walery Studennikov wrote: >> 30 июня 2010 г. 15:53 пользователь Dmitry Karasik >> <[email protected]> написал: >> > что-то мне сомнительно что одинокий stat64, даже помноженный на пару сотен >> > раз, займет больше в сумме чем пару миллисекунд >> >> Ну считайте сами... >> >> У нас в одном из проектов грузится 700+ модулей, включая все зависимости. >> В @INC 15 записей. >> >> Итого 700 * 15 = 10500 лишних системных вызовов. >> >> Оно нам надо? > > #include <sys/types.h> > #include <sys/stat.h> > #include <sys/time.h> > #include <unistd.h> > #include <stdio.h> > int main() > { > int i; > struct stat s; > struct timeval t1, t2; > gettimeofday(&t1, NULL); > for ( i = 0; i < 10500; i++) stat("unexistent.pmc", &s); > gettimeofday(&t2, NULL); > i = t2.tv_sec * 1000000 + t2.tv_usec - t1.tv_sec * 1000000 - > t1.tv_usec; > printf("%g seconds\n", (float)(i)/1000000); > return 0; > } > > аж целых 0.023536 seconds на моем медленном лаптопе )
А ты имена файлов генерируй случайным образом -- так честнее будет ;) -- Walery Studennikov http://www.reg.ru/ -- Moscow.pm mailing list [email protected] | http://moscow.pm.org
