首页 > 编程语言 > 详细

线程池,CompletableFuture学习

时间:2019-08-28 12:38:19      阅读:233      评论:0      收藏:0      [点我收藏+]

   最近在做gRPC对服务端的压测,从开发身上学习到了高级用法,记录一下:

   简单说,就是长连接不释放导致TCP连接数耗尽,期望通过http2解决这个问题,也就是说,其实是用gRPC来重写了消息服务,因此需要高并发(并不是)及异步编程。

   开发review了我的代码以后,重写成这样了,记录在这里学习下。

   

CompletableFuture<?>[] completableFutures = new CompletableFuture[num];
ExecutorService executorService = Executors.newFixedThreadPool(200);
Stopwatch mainWatch = Stopwatch.createStarted();
for (int i = 0; i < num; i++) {
completableFutures[i] = CompletableFuture.runAsync( () -> xxxxService.sendMessage("xielu_test")
, executorService);
}
CompletableFuture.allOf(completableFutures).join();


线程池,CompletableFuture学习

原文:https://www.cnblogs.com/spillage/p/11422971.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!