in reply to Re: The -d switch isn't working as I expected it to (test to see if its a directory)
in thread The -d switch isn't working as I expected it to (test to see if its a directory)
$ perl chdir_benchmar Benchmark: timing 1000 iterations of with_chdir, without_chdir... with_chdir: 16 wallclock secs ( 8.11 usr + 8.46 sys = 16.57 CPU) @ 60.35/s (n=1000) without_chdir: 31 wallclock secs (10.98 usr + 19.15 sys = 30.13 CPU) @ 33.19/s (n=1000)
#!/usr/bin/perl use warnings; use strict; use Benchmark; sub with_chdir { my $d = shift; my $filecount = 0; chdir($d) or die "chdir: $!\n"; opendir(DIR,"."); while(my $f = readdir(DIR)) { ( -f $f) and $filecount++; } } sub without_chdir { my $d = shift; my $filecount = 0; opendir(DIR,$d); while(my $f = readdir(DIR)) { ( -f "$d/$f") and $filecount++; } } use constant TESTDIR => "/var/mail"; timethese(100, { with_chdir => sub { with_chdir(TESTDIR); }, without_chdir => sub { without_chdir(TESTDIR); }, });
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^3: The -d switch isn't working as I expected it to (test to see if its a directory)
by bluto (Curate) on Jan 07, 2005 at 23:08 UTC | |
by sgifford (Prior) on Jan 07, 2005 at 23:55 UTC | |
by bluto (Curate) on Jan 10, 2005 at 16:37 UTC |