zoukankan      html  css  js  c++  java
  • 并发入门

    Go 是并发式语言,而不是并行式语言。在讨论 Go 如何处理并发之前,我们必须理解何为并发,以及并发与并行的区别。

    1 并发:同一时间段内,多个任务在执行(单个cpu,执行多个任务)
    2 并行:同一时刻,多个任务在执行(多个cpu的支持)

    并发是什么?

    并发是指立即处理多个任务的能力。一个例子就能很好地说明这一点。
    
    我们可以想象一个人正在跑步。假如在他晨跑时,鞋带突然松了。于是他停下来,系一下鞋带,接下来继续跑。
    这个例子就是典型的并发。这个人能够一下搞定跑步和系鞋带两件事,即立即处理多个任务。

    并行是什么?并行和并发有何区别?

    并行是指同时处理多个任务。这听起来和并发差不多,但其实完全不同。
    
    我们同样用这个跑步的例子来帮助理解。假如这个人在慢跑时,还在用他的 iPod 听着音乐。在这里,他是在跑步的同时听音乐,也就是同时处理多个任务。这称之为并行。

    Go 对并发的支持

    Go 编程语言原生支持并发。Go 使用 Go 协程(Goroutine) 和信道(Channel)来处理并发。
  • 相关阅读:
    AttributeUsage属性
    LINQ基本子句
    js 变动首页参与人数
    C#控件的闪烁问题解决方法总结
    AttributeUsage
    MVC3 js+flash图片滚动
    通过写后台权限领悟到的东西
    删除同辈元素并添加指定元素的类
    JS产生两个数之间的随机数
    Web Service 学习笔记
  • 原文地址:https://www.cnblogs.com/ZhZhang12138/p/14886753.html
Copyright © 2011-2022 走看看