简单的线程池(六)

◆ 概要

本文汇总了 《简单的线程池(三)》、《简单的线程池(四)》、《简单的线程池(五)》 中的测试数据,并在此基础上对比了 非阻塞共享式、阻塞共享式、非阻塞独占式、阻塞独占式 这四个线程池的吞吐量指标。笔者对结果进行了分析,给出笔者的结论。如对测试方案、概念等有不明之处,请参考该博文。

【注】非阻塞共享式 略称为 LS,阻塞共享式 略称为 BS,非阻塞独占式 略称为 LU,阻塞独占式 略称为 BU。

◆ 数据

图1 ~ 图3 汇总了四个线程池的平均吞吐量数据,以及以非阻塞共享式线程池的吞吐量为基准计算得出的差异。

图1
图2
图3

◆ 分析

图4 列举了 吞吐量1的差异 在 0.5 分钟、1 分钟和 3 分钟的提交周期内不同思考时间上的对比。

图4

【注】为了生成图表,图中底色为浅灰色的数据由 无意义值 调整为 0.00%。下同。

可以看到,

图5 列举了 吞吐量2的差异 在 0.5 分钟、1 分钟和 3 分钟的提交周期内不同思考时间上的对比。

图5

可以看到,

图6 列举了 吞吐量3的差异 在 0.5 分钟、1 分钟和 3 分钟的提交周期内不同思考时间上的对比。

图6

可以看到,

◆ 结论

通过增加了共享式吞吐量与独占式吞吐量的对比,本次分析再次验证了 《简单的线程池(三)》 中的结论,即在思考时间不为 0 的情况下,

同时笔者认为,在考虑思考时间为 0 的极端情况下,

◆ 最后

完整的分析数据请参考 [github] cnblogs/15702250 。