多线程 并行与并发的区别

并行、并发在计算机编程中是非常重要的两个概念,但是它们常常被混淆。下面我来用一句话来概括,然后用通俗易懂的语言解释并举例说明。

并发:两个任务共享时间片段。在计算的场景中是指,只有一个CPU的情况下,有两个任务要执行,那么需要给任务随机分配时间片段,任务A执行一会儿,然后任务B执行一会儿,下一次执行任务A或B一会儿,直到两个任务完成。并发在同一时刻只能执行一个任务。举一个例子,有个漂亮的小姐姐开了家小餐馆。起初,顾客不太多,小姐姐身兼数职,既要点菜,又要收银,某一时刻,1号桌的客人需要点菜,同时2号桌的客人需要买单,小姐姐只有一个人,没有办法,只能先去2号桌买单,然后去1号桌点菜,这就是并发。

并行:两个任务同时执行。在计算机的场景中是指,在有多个CPU的情况下,比如说有两个CPU,有一个任务要执行,恰好该任务可以分成两个子任务分给两个CPU同时执行,然后将执行的结果合并即可。并行在同一时刻可以执行多个任务。同样举一个例子,接着上文说。慢慢的,餐馆的生意越来越好,小姐姐一个人忙不过来,于是她请了两个服务员专门负责点菜。某一时刻,来了两桌人,于是服务员A去招待1号桌的客人,服务员B去招待2号桌的客人,将点菜这件事分给A、B两个人同时去做,就是并行。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值