You need to start each JobControl in its own thread so they can run
concurrently. Something like:
Thread t = new Thread(jobControl);
t.start();
Then poll the jobControl.allFinished() method.
Tom
On Tue, Apr 21, 2009 at 10:02 AM, nguyenhuynh.mr
<[email protected]> wrote:
> Hi all!
>
>
> I have some jobs: job1, job2, job3,... . Each job working with the
> group. To control jobs, I have JobControllers, each JobController
> control jobs follow the specified group.
>
>
> Example:
>
> - Have 2 Group: g1 and g2
>
> -> 2 JobController: jController1, jcontroller2
>
> + jController1 contains jobs: job1, job2, job3, ...
>
> + jController2 contains jobs: job1, job2, job3, ...
>
>
> * To run jobs, I sue:
>
> for (i=0; i<2; i++){
>
> jCtrl[i]= new jController(group i);
>
> jCtrl[i].run();
>
> }
>
>
> * I want jController1 and jController2 run parallel. But actual, when
> jController1 finished, jController2 begin run.
>
>
> Why?
>
> Please help me!
>
>
> * P/s: jController use org.apache.hadoop.mapred.jobcontrol.JobControl
>
>
> Thanks,
>
>
> cheer,
>
> Nguyen.
>
>