Java为什么要用多线程

用多线程只有一个目的,那就是更好的利用cpu的资源,因为所有的多线程代码都可以用单线程来实现。说这个话其实只有一半对,因为反应“多角色”的程序代码,最起码每个角色要给他一个线程吧,否则连实际场景都无法模拟,当然也没法说能用单线程来实现:比如最常见的“生产者,消费者模型”。

就例如一个网络爬虫的功能,有10亿数据,假如一条请求花费0.1秒,因为时间有限,所以你要尽量提升开发效率,你就需要好多的服务器,大家也都知道,每台服务器的价钱都是成本,这么庞大的成本显然不切实际。我们只能想办法从自身提升效率。

假如一个请求花费0.1秒,你处理他的请求只需要大约1毫秒,其实百分之99的时间都已经浪费了,所以,我想可以理论上开辟100个线程请求数据,这样CPU就没有任何浪费。当然,也只是理论上,实际上,线程之间的切换也是需要开销的,所以不可能开辟这么多的线程,不过开辟几个线程是很不错的选择。

线程,一般就是在解决CPU浪费资源时才会用到。

这就是为什么要用到线程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值