多线程思想解析

多线程是一种重要的思想。本质上是宏观上并行微观上串行。

其实对于单cpu其实还是单线程,但这样做能有效地提高效率。
打比方就是你在烧开水,然后马上去上网了。这个时候其实你是在等开水开了之后你在去倒,而不是一直做着等开水开了再去上网。这样其实时间片的利用率就高了。优势就在这里。

对于cpu而言,由多线程带来的共享冲突这个是最大的坏处。很多问题都是由于这个问题或者是为了解决这个问题而引起的一系列的问题导致的。比如今天你在单核的机子上同时拷两个大文件这样,其实还不如你一个一个文件拷来的快。就是我说的第二种情况,因为cpu的资源切换也是要消耗时间的。
同样的共享冲突也会是个问题。比方:学校里有块黑板报,今天我写了个“1”,明天有个捣蛋的把它改成了“2”,这样信息已经不是我们期望的值了。当然我们会提出一系列的措施来杜绝此类事的发生,比如给黑板报加个框,并上锁,这个钥匙只归我所有,这样只能我进行信息修改,如果别人也想改必须也要获得此钥匙!这就是解决多线程共享的锁机制!

坏处:增加了调度和管理的开销,带来了一些不确定性,需要复杂的同步机制,避免死锁等等。
好处:一定程度上提高响应速度,在多核的情况下还是更能充分利用CPU资源的。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值