首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 软件管理 > 软件架构设计 >

JPPF札记

2012-08-14 
JPPF笔记1. 参数传递:Job.setDataProvider 传递给Task??2. 初始化例子??public void run() {ApplicationCo

JPPF笔记

1. 参数传递:Job.setDataProvider 传递给Task?

?

2. 初始化例子

?

?

public void run() {

ApplicationContext ctx = (ApplicationContext) NodeRunner.getPersistentData("spring-context");

if (ctx == null) {

ctx = ?new MyContext("classpath:applicationContext.xml");

System.out.println("get context");

NodeRunner.setPersistentData("spring-context", ctx);

}

JdbcTemplate jdbc = (JdbcTemplate) ctx.getBean("jdbcTemplate");

List list = jdbc.queryForList("select * from um_usr");

System.out.println(list.size());

super.setResult(1000L);

}

?

3. Concurrent 包

JPPF实现了Java5 Concurrent包

但是因为JPPF采用远程传输方式,所以任务类必须实现Serializable 接口,否则收不到计算结果。

?

测试Main:

public static void main(String[] args) throws InterruptedException, ExecutionException {

JPPFClient client = new JPPFClient();

JPPFExecutorService exec = new JPPFExecutorService(client);

Future<Long> future = exec.submit(new MyTask());

System.out.println("future get:" + future.get());

exec.shutdown();

}

?

public class MyTask implements Callable<Long>, Serializable {

?

private static final long serialVersionUID = -4442750246804487036L;

?

@Override

public Long call() throws Exception {

System.out.println("running me ..");

return 100L;

}

?

}

热点排行