测试1
@benchmarkmode(mode.averagetime)@outputTimeUnit(timeunit.nanoseconds)@warmup(iterations = 5,time = 3,timeunit = timeunit = timeunit.seconds)@measurement @measurement(iterations = 20,time = 3,time = 3,timeunit = timeUnit = timeunit = timeunit = timeunit = timeunit.seconds)@fork(@fork) List <string> data = new ArrayList <>(); @setup public void init(){//准备(int i = 0; i <100; i ++){data.add(uuid.randomuuid()。toString()); }} @teardown public void destory(){// descory} @benchmark public void benchstream(){data.stream()。 } @benchmark public void benchparallelstream(){data.parallelstream()。 } public static void main(string [] args)抛出RunNereXception {options opt = new OptionsBuilder().include(“。新Runner(opt).run(); }}}平行路线线程数
默认是runtime.getRuntime()
运行结果
#运行完整。 Total time: 00:02:44Benchmark Mode Cnt Score Error UnitsStreamBenchTest.benchParallelStream avgt 20 155868805.437 ± 1509175.840 ns/opStreamBenchTest.benchStream avgt 20 1147570372.950 ± 6138494.414 ns/op
测试2
将数据数据改为30,同时睡觉改为100
基准模式CNT分数错误单位streambenchtest.benchparallelstream AVGT 20 414230854.631±725294.455 NS/opStreamBenchtest.benchstest.benchstest.benchstest.3107250608.500
可以发现睡觉越长,平行路线优势越明显。
小结
平行路线在阻塞场景下优势更明显,其线程池个数默认为
runtime.getRuntime()
以上就是本次讲述知识点的全部内容,感谢你对武林网的支持。,感谢你对武林网的支持。