Parallel execution of Oracle procedure in UNIX

i have say x number of procedure to run, ie i have one procedure which accepts variable and i need that to run in parallel and capture the error code if in case if it fails through the unix.

sqlplus <EOF> exec test_t (abc,124); </EOF>
sqlplus <EOF> exec test_t (abc,125); </EOF>
sqlplus <EOF> exec test_t (abc,123); </EOF>

I want all these to run parallelly and capture the error if any1 fails. Is there any possible way to do the same in unix.

> errlog  # truncate the errlog file
for i in 124 125 126 128 129 101 203
do
(sqlplus user/passwd <<EOF >> errlog 
    exec test_t ('abc', $i);
EOF ) &
done
wait

That is just meant as a template not a well-written program.
Also be aware there are OS limits as to the number of active child processes - in this case the ( sqlplus ... ) &
Hopefully you have covered yourself with error checking in test_t, you know the WHENEVER syntax needed to exit on error and report problems

if one of the calls fail, how does the error handling work? Also i have someother task which needs to be started after the above is completed. So how does WAIT condition work? bcz i need to get the status of the procedure calls once its completed. So how do i know weather all the calls have been completed.
ie say i have 4 calls and 2 of them fails, then will the error be written to the one common error file?