Golang GMP模型 笔记
https://www.yuque.com/aceld/golang/srxd6d https://www.bilibili.com/video/BV19r4y1w7Nx/?p=18 本篇文章只是这个视频的一个笔记,但视频其实有非常多让人困惑的地方并没有做解释,本文也没有深究 核心在于协程调度器的优化 什么是GMP模型? G(goroutine):协程 …
Archive
https://www.yuque.com/aceld/golang/srxd6d https://www.bilibili.com/video/BV19r4y1w7Nx/?p=18 本篇文章只是这个视频的一个笔记,但视频其实有非常多让人困惑的地方并没有做解释,本文也没有深究 核心在于协程调度器的优化 什么是GMP模型? G(goroutine):协程 …
本文译自:https://go.dev/ref/mod#non-module-compat Golang的导包有两种模式,一种是基于GOPATH的(老),一种是基于Module的(新),自1.16版本后,默认开启基于Module的方式,不管 go.mod 文件存不存在 对非Module模式项目的兼容方式 对即使没有go.mod的项目(非module项目 …
此文翻译自官方文档:https://go.dev/ref/mod#resolve-pkg-mod 当你使用 import xxx 方式导包时,它首先需要判断这个包来自哪个module go首先会在 build list寻找是否有哪个module的前缀与导入的包前缀的相同,例如,如果你想导入 example.com/a/b,并且 example.com/a 存 …
优势 简单的部署方式 可直接编译成机器码 不依赖其他库 直接运行即可部署 静态类型语言 编译的时候检查出大多数的问题 语言层面的并发 强大的标准库 runtime系统调度机制 高效的GC垃圾回收 丰富的标准库 简单易学 25个关键字 c语言支持 面向对象 跨平台 成就 Docker Kubernetes 缺点 包管理,大部分都托管在github上 无泛化类型 …
项目实例 最终目录结构 创建项目目录 创建一个目录作为项目根目录(目录名随意,我这里使用 go_practice ),在在其下面创建一个子目录(sub_pkg)用于演示package的引用方式 初始化GOMODULE 在 go_practice 目录下执行命令 go mod init hunt/practice 其中 hunt/practice 是该 …