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

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

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

    并发是什么?

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

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

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

    Go 对并发的支持

    Go 编程语言原生支持并发。Go 使用 Go 协程(Goroutine) 和信道(Channel)来处理并发。
  • 相关阅读:
    ssh框架整合
    spring事务管理
    spring AOP
    spring静态代理和动态代理
    log4j介绍
    Socket通信介绍
    C# 串口与窗体应用程序的连接
    Halcon中的图像相减算子abs_diff_image和sub_image
    R-CNN、fast-RCNN、faster-RCNN到yolo、SSD简要
    QT入门系列(2):MinGW与MSVC编译的区别
  • 原文地址:https://www.cnblogs.com/ZhZhang12138/p/14886753.html
Copyright © 2011-2022 走看看