近日重新翻了一下《Java Concurrency in Practice》故以此文记之。
我觉得Java的并发可以从下面三个点去理解:
* 编译重排序
* 内存模型
* 资源竞争
这三个概念在Java并发中是非常重要的,好也可以阅读相关资料理解一下。
一些概念
Amdahl定律
在包含N个处理器的机器中,高的加速比为:Sppedup<=1/(F+(1-F)/n)。当N接近无穷大,大的加速比趋近于1/F。因此,如果程序中有50%的计算需要串行执行,那么高的加速比只有2;如果程序中有10%的计算需要串行执行,那么高的加速比接近10。
Happ