http://www.perlmonks.org?node_id=1002031


in reply to How can I run a piece of code asyncronously in Perl?

TIMTOWTDI:
if (fork==0) { exec qw{t1.pl arg1 arg2 arg3}; }
This will fork the program and start your command in the child process (where fork returns 0).
Sorry if my advice was wrong.

Replies are listed 'Best First'.
Re^2: How can I run a piece of code asyncronously in Perl?
by Anonymous Monk on Nov 03, 2012 at 19:04 UTC

    This TIMTOWTDI is probably better than the other WTDI. But I'd like to make it clear to the OP that exec() takes a list, so therefore:

    exec 't1.pl', $arg1, $arg2, $arg3;

    (Well, better in the sense that I cringe whenever something goes through sh -c when not absolutely necessary. It is very easy to introduce a bug that way.)