package client; import java rmi. * import java. math. * import compute. *i public class ComputePi i public static void main(string args& if( System. getSecurityManagero==null) i System. setSecurityManager(new RMISecurityManagerO); try String name=//+ args[0 +/Compute Compute comp=(Compute)Naminglookup(name); i task=new Pi(Integer parseInt(args1D) Big Decimal pi=(Big Decimal)(comp. execute Task (task) System. out. printIn(pi); 3 catch(Exception e)i System.err printIn "ComputePi exception: +e.getMessageo e.printStackTraceo
北 京 大 学 计 算 机 系 代 亚 非 16 9.6 一个RMI的分布式应用的实例 package client; import java.rmi.*; import java.math.*; import compute.*; public class ComputePi { public static void main(String args[]) { if (System.getSecurityManager() == null) { System.setSecurityManager(new RMISecurityManager()); } try { String name = "//" + args[0] + "/Compute"; Compute comp = (Compute) Naming.lookup(name); Pi task = new Pi(Integer.parseInt(args[1])); BigDecimal pi = (BigDecimal) (comp.executeTask(task)); System.out.println(pi); } catch (Exception e) { System.err.println("ComputePi exception: " + e.getMessage()); e.printStackTrace(); } } }
9.6一个RM的分式应用的实 ·P的作用 rmiregistry 北京大学计算机系代亚非 实现Task接口 computer Compute 实现 execute算法 engin
北 京 大 学 计 算 机 系 代 亚 非 17 9.6 一个RMI的分布式应用的实例 • Pi的作用 computepi rmiregistry Compute engin 实现Task接口 实现execute算法