采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
我一直不明白你用Future和队列有什么关系呀,future只是说你等待线程池里面任务完成后就返回输出结果,然后你又没有用BlockQuene,感觉老师你在把我们带偏呀
首先:线程池中有一个等待队列,就是用blockqueue实现的,我们将任务提交给线程池,线程池中可执行线程沾满后会将任务放到等待队列中,这样做就等于是限制了用户并发的流量,使得其在线程池的等待队列中排队处理。
然后future的使用是为了让前端用户在调用controller后可以同步的获得执行的结果
老师,我觉得您说的不对,您可以看源码,其实,你只是使用了线程池封装的队列而已!如果您想用future里面的队列,应该使用ExecutorCompletionService来把线程池封装之后在使用future就可以使用future里面执行线程的队列!
具体可以参考java并发编程实战第六章107页!只是建议!
同学你还是没懂我的意思,用future只是为了获取线程池执行后的结果,和future队列无关,用的只是线程池的队列让所有执行排队而已
登录后可查看更多问答,登录/注册
理解高流量电商网站性能构建思路 用高逼格技术解决性能提升问题
1.8k 11
1.3k 10
1.7k 9
1.2k 9
1.1k 8