computeengine.java
来自「本程序是用java实现的一个计算机引擎,主要用了javaRMI技术.做的是一个基」· Java 代码 · 共 51 行
JAVA
51 行
package engine;
import java.rmi.*;
import java.rmi.server.*;
import compute.*;
public class ComputeEngine extends UnicastRemoteObject implements Compute{
int id = 0;
taskList task_list;
compteTask com;
/*
* 构造函数
*/
public ComputeEngine() throws RemoteException
{
super();
System.out.println("run ComputeEngine ...");
task_list = new taskList();
com = new compteTask(task_list);
}
/*
* 处理客户端的任务查询,判断任务是否执行完毕
* 若执行完毕则返回执行结果并将任务从任务队列中删除,否则返回null
*/
public Object askTask(int id) throws RemoteException {
// TODO Auto-generated method stub
System.out.println("client "+id + "ask result ...");
if(task_list.isComplete(id)==0)
{
Object o = task_list.task_list.get(id).getResult();
System.out.println("the result is "+(Integer)o);
task_list.task_list.remove(id);
return o;
}
System.out.println("the result hasn't compute out.");
return null;
}
/*
* 接收客户端提交的任务,返回给其一个ID
*/
public int submitTask(Task t) throws RemoteException {
// TODO Auto-generated method stub
if(!com.isAlive())
com.start();
id ++;
task_list.pushTask(id, t);
System.out.println("client submit a task, give him the id: "+id);
return id;
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?