Job代表一个异步操作。
要执行的操作在run方法里。

//定义一个Job
classAJobextendsJob
{
publicAJob()
{
super("Andy'sJob");
}


publicIStatusrun(IProgressMonitormonitor)
{
System.out.println(
"ThisisAndy'sJob");
returnStatus.OK_STATUS;
}

}



schedule后,任务在平台线程等待队列中排队,等待调度执行。
调用方式1:

//异步调用
AJobjob=newAJob();
job.schedule();
//唤起平台线程来调度这个Job

调用方式2:

//结束后再运行
AJobjob=newAJob();
job.schedule();
//dosomeotherthings.
job.join();//block,直到job完成或调用线程被中断
if(job.getResult().isOk())
{
//Jobcompletedwithsuccess.
}

else
{
//Jobdidnotcompletesuccessfully.
}


取消一个Job:
if(!job.cancel())
{
job.join();
}
//cancel可能不会立即成功,我们用join等待cancel操作完成。


版权所有 罗明
posted on 2005-10-06 23:35 罗明 阅读(138) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: