In general, forking and multi-threading won't speed up non-blocking algorithms unless you have a multiprocessor system and your program can take advantage of multiple processors. This doesn't look like one of those occasions.
Not being a Windows programmer, I merely suspect you could hoist the OLE constructor out of the loop for a minor speed boost:
my $fso = Win32::OLE->new( 'Scripting.FileSystemObject' ); for my $Path (@ARGV) { my $Match = {}; );
You'll also avoid one-character buffer flushes if you re-enable buffering on STDOUT. Just about everything else looks like a micro-optimization to me, and I can't benchmark it. Insert hand-waving here.
In reply to Re: Getting a script to do 2 process simultaneously.
by chromatic
in thread Getting a script to do 2 process simultaneously.
by blackadder
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |