go并发实战,第一天

大部分本书第一章节是来介绍go语言基础的,其实如果你不是大师,只是一个才起飞的菜鸟,建议不要跳过喔!

为什么不要跳过?因为每个人对语言的认知是不一样的,看看别人是怎么理解一个新事物。对于计算机学习者来说,不需要花里胡哨,要打好基础,勤于思考和动手实践!!!!!!!!!!!

(给大家推荐个学习资源:Z-library,免费图书馆,书栈网)

书的源地址(可能要f墙):https://lib-g6iq77x35hzcg23glcd3otel.thanks.sbs/dtoken/d24beb7d93481f84a9b76ba476dc7844/Go%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B%E5%AE%9E%E6%88%98%20%E7%AC%AC2%E7%89%88%20%28%E9%83%9D%E6%9E%97%29%20%28Z-Library%29.pdf

 

第一章:初始go语言(复习)

第二章:go语法(复习)

第三章:并发编程综述

第四章:go的并发机制

第五章:同步(操作系统知识复习)

第六章:爬虫实战

末章:学习资源推荐

第一章:

这个go项目的文件我觉得有必要了解一下,以前还得配环境,先在不需要了。

以前就要把项目放src目录下,特别麻烦。

第一章就讲了怎么安装go,怎么配置环境,怎么导入包,常用的go命令(go命令没有必要记住,多敲敲就会了)

第二章:

这几个内建函数用得少

例如:

对于一个复数z := complex(x, y),可以通过Go语言的内置函数real(z)来获得该复数的实部,也就是 x;通过imag(z)获得该复数的虚部,也就是 y。

Recover是一个Go语言的内建函数,可以让进入宕机流程中的goroutine恢复过来。recover仅在延迟函数defer中有效。在正常的执行过程中,调用recover会返回nil并且没有其他任何效果。如果当前的goroutine陷入恐慌,调用recover可以捕获到panic的输入值,并且恢复正常的执行。

流程控制 (和并发相关的知识点)

第三章:

并不是并发数越多越好!

串行和并发(很是奇怪,学操作系统原理的时候,居然没听说过串行?)

什么是并发?什么是并行?(这个和我之前读的一本书说的不一样,但是这个解释是出自操作系统原理)

并发与并行是两个既相似但是却不相同的概念:

并发性:又称共行性,是指处理多个同时性活动的能力,。

并行:指同时发生两个并发事件,具有并发的含义。并发不一定并行,也可以说并发事件之间不一定要同一时刻发生。

并发的实质是一个物理CPU(也可以是多个物理CPU)在若干个程序之间多路复用,并发性是对有限物理资源强制行使 多用户共享以提高效率。

并行指两个或两个以上事件或活动在同一时刻发生,在多道程序环境下,并行使多个程序同一时刻可在不同CPU上同时执行。

并发是在同一个cpu上同时(不是真正的同时,而是看来是同时,因为CPU要在多个程序之间切换)运行多个程序。

并行是每一个CPU运行一个程序。

并发是指一个处理器同时处理多个任务。
并行是指多个处理器或者是多核的处理器同时处理多个不同的任务。
并发是逻辑上的同时发生(simultaneous),而并行是物理上的同时发生。

打个比方:并发就像一个人(CPU)喂两个小孩(程序)吃饭,表面上是两个小孩在吃饭,实际是一个人在喂。

并行就是两个人喂两个小孩子吃饭。

进程的5个状态:

最新文章

  1. ZOJ 3817Chinese Knot(The 2014 ACM-ICPC Asia Mudanjiang Regional First Round)
  2. 八皇后java算法
  3. C语言程序设计第三次作业
  4. Python 学习---------Day3
  5. c#入门笔记(1)数据类型
  6. 《Java中的自动装箱和拆箱功能.》
  7. #define 和typedef的区别
  8. difference between instance variable and property
  9. [020] Android模拟器访问本地Web应用
  10. <转>详解DNS的常用记录(下):DNS系列之三
  11. 安装Oracle时选择桌面类和服务器类的区别
  12. grails导入excel
  13. 198. House Robber,213. House Robber II
  14. linux 进程间通信 之fifo
  15. 面向对象:静态属性,静态方法,组合,继承,衍生,继承之mro线性顺序列表,面向对象综合实例
  16. 面向对象的封装(私有化)及@property(查看)/@setter(修改)!!!
  17. preg_replace正则表达式的使用
  18. LeetCode practice
  19. POJ服务器不能启动问题
  20. freepbx的SIP通话客户端X-lite Yate eyeBeam Linphone

热门文章

  1. Github Actions 学习笔记
  2. ORM数据库查询优化only与defer(select_related与prefetch_related)
  3. 11、lombok日志记录
  4. 解决MySQL Connector/ODBC驱动无法安装Error1918
  5. [seaborn] seaborn学习笔记4-核密度图DENSITYPLOT
  6. [OpenCV实战]23 使用OpenCV获取高动态范围成像HDR
  7. npm ERR! An unknown git error occurred
  8. S2-016 CVE-2013-2251
  9. PyTorch如何加速数据并行训练?分布式秘籍大揭秘
  10. iOS14新特性