java多线程应用场景

                                       java多线程应用场景

多线程是基于一个进程的多个执行过程。多线程貌似是提高了处理机的处理速度。实际是这样么?

假设我们要做一万次for循环,有十个线程,每个线程做1000次。那么多线程会比单线程执行的快么。

针对单核cpu来说,单线程是最快的。因为多线程并不是真正意义上的多个一起运行。而是每个进程都在一定时间片占用cpu。

到时间就会放弃处理机,而切换进程也需要时间,所以整理上来说还是单线程时间快。

那么我们什么时候用多线程呢?

我们在处理一个网络请求的过程的时候可能花了2ms,而我们实际处理的时间大概只有0.002ms,剩下的都是等待网络传输的时

间。这段时间是被这个进程占用的,这时候我们就需要让该进程的其他线程占用处理机,多线程这时候便起到了作用。

还有就是我们在搭建一个网站的时候,用户向我们发请求,不同的用户需要开启一系列不同的线程来相应每个用户的请求。

多线程又得到了应用。用户发的请求如果是1k的话,服务器这边就需要1m甚至更多的开销来满足用户的需求,对服务器端的开销还

是很大的。所以我们服务器如果太多的人访问的话就会崩溃。而对于淘宝这样的大网站都是有专门的服务器先存起来用户的请求,

然后再把请求给server服务器处理。当然需要很多成本。但相对于利润,成本还是值得的。

总结:多线程是为了实现业务或者性能才会运用的到。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值