Billy Pearson wrote: > The only way I know of is try using different Scheduling Queue's for > each group > > Billy > > "nguyenhuynh.mr" <nguyenhuynh...@gmail.com> wrote in message > news:49ee6e56.7080...@gmail.com... >> Tom White wrote: >> >>> 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 >>> <nguyenhuynh...@gmail.com> 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. >>>> >>>> >>>> >>> >>> >> Thanks for your response! >> >> I have used Thread to start JobControl, some things like: >> >> public class JobController{ >> >> public JobController(String g){ >> ..... >> } >> >> public run(){ >> Job j1 = new Job(..); >> Job j2 =new Job(..); >> JobControl jc = new JobControl("group1"); >> >> Threat t=new Thread(jc); >> t.start(); >> >> while(! jc.allFinish()){ >> // Display state .... >> } >> } >> } >> >> * To run the code some like: >> JobController[] jController=new JController[2]; >> for (int i=0; i<2; i++){ >> jController[i]=new JobController(group[i]); >> JCOntroller[i].run(); >> >> } >> >> * But not parallel run :( ! >> >> Please help me! >> >> Thanks, >> >> Best regards, >> Nguyen, >> >> > > > Thanks for all your help!
Please show detail your solution and give me a example. Thanks much, Best regards, Nguyen.