摘要: 对无序数组的并发搜索的实现可以充分的用到多cpu的优势 一种简单的策略是将原始数组按照期望的线程数进行分割,如果我们计划使用两个线程进行搜索,就可以把一个数组分成两个,每个线程各自独立的搜索,当其中有一个线程找到数据后,立即返回结果的index即可。 首先index需要采用atomicinteger 阅读全文
posted @ 2017-05-12 17:37 起个po名真费劲 阅读(653) 评论(0) 推荐(0) 编辑
摘要: 并不是所有的操作都能进行并发计算的,比如有关于数据相关性的操作,如(B+C) * B,操作之间都会有依赖关系的。 可以使用流水线方式充分利用多核环境。 开多个线程。每一条线程相当于车间,负责执行一小部分工作,执行完传递给下一个线程,线程之间可以通过阻塞队列来进行通信。 具体实现: 其中Div, Mu 阅读全文
posted @ 2017-05-12 11:32 起个po名真费劲 阅读(591) 评论(0) 推荐(0) 编辑
摘要: Future模式核心思想是异步调用。我们可以先拿到调用的凭证,让方法先返回,让他在后台慢慢的处理这个请求。通过这个可以实现异步操作。 JDK经准备好了一套完美的实现方式。我们用于执行的异步线程需要继承Callable接口,相当于Runnable,Callable接口中有一个方法call(),相当于r 阅读全文
posted @ 2017-05-12 11:00 起个po名真费劲 阅读(238) 评论(0) 推荐(0) 编辑