You can maybe save yourself some trouble by not forking to the system shell like that.
First of all, if you use the multi arg version system you'll have less interpolation trouble to avoid (e.g., system("del", $file)==0 or die).
Second, try out unlink. It probably does that better anyway. I'm not a windows guy (which is the only platform where this kind of timing "issue" is a problem), but I think you can do something like this:
for my $file (@files) { my $retries = 2; JUST_TRY_ME: { unless( unlink $file ) { if( (--$retries) > 0 ) { warn "problem unlinking file ($file): $!"; sleep 2; redo JUST_TRY_ME; } else { die "too many problems unlinking file ($file) ..."; } }
UPDATE: holi is probably right... you probably just need to close first.
-Paul
In reply to Re: Odd Timing Executing Lines of Code
by jettero
in thread Odd Timing Executing Lines of Code
by ~~David~~
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |