对于选择单线程执行,采用线程池执行,以及采用直接new一个新线程执行的思考

在日常开发对于前后端交互的问题上,我们一般最常用的是使用一个线程来处理前台需要获取的数据,在处理完数据之后将结果立即返回至前台,但是存在这种场景,如果我们收到一个请求之后,我们需要做一些耗时的操作,比如说对于一件商品下订单的过程中我们可能需要的过程是下订单,发货,出快递单号等等一系列操作,但是在前台看起来我只需要下单只需要给我返回下单的结果和库存数减少即可,其他的复杂操作不需要反馈至前台页面这时我们可以用线程来进行异步操作,来保证前台页面得到及时的响应提高效率。但是在这个时候调用的异步线程是选用线程池还是new一个新的线程呢,我们在做一些实时性不高的操作时可以采用线程池来创建线程进行调度,但是线程池有一个局限性,那么就是他可开辟的线程数有限,那么假如有一个场景是这样的,我要立即返回一个结果至前台页面,但是在对请求处理中可能有一些计算等复杂的操作,这个时候我们若果调用线程池进行处理,这时的线程池假如说所有的线程都在做一些耗时的操作,那么我么现在需要做多线程计算的操作只能在阻塞队列中进行等待,这样就会导致数据不会及时反馈,这时我们可以直接new一个新的线程来对这些进行处理,放置上述问题存在,但是要注意这类操作不能是多用户经常执行的,否则会开辟相当可观的线程数量导致我们的服务花太多时间用于线程的调度上

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值