读书人

java利用FutureTask、ExecutorService

发布时间: 2012-08-24 10:00:21 作者: rapoo

java利用FutureTask、ExecutorService 在多核时代充分利用CPU运算

FutureTask、ExecutorService 相关知识,请看java,API

一个使用FutureTask简单的例子:?

?

运行的结果是:
futureTask开始执行计算:1280114852250
main 主线程可以做些其他事情:1280114852250
futureTask 执行完成1280114855250
计算的结果是:4950
取得分支线程执行的结果后,主线程可以继续处理其他事项


如果有多个FutureTask要执行批量运算,从而充分的利用多核CPU,可以参考下面的代码:?

?

运行的结果是:
pool-1-thread-1 sum:120
pool-1-thread-1 sum:136
pool-1-thread-1 sum:153
pool-1-thread-1 sum:171
pool-1-thread-1 sum:190
pool-1-thread-2 sum:66
pool-1-thread-3 sum:78
pool-1-thread-4 sum:91
pool-1-thread-5 sum:105
多线程计算后的总结果是:1165

读书人网 >编程

热点推荐