Golang源码学习(一)waitGroup实现原理

  • Post author:
  • Post category:golang

A WaitGroup waits for a collection of goroutines to finish. The main goroutine calls Add to set the number of goroutines to wait for. Then each of the goroutines runs and calls Done when finished. At …

继续阅读 Golang源码学习(一)waitGroup实现原理

Golang中defer、return、返回值和main、init函数的陷阱

  • Post author:
  • Post category:golang

Go语言中延迟函数defer充当着 cry...catch 的重任,使用起来也非常简便,然而在实际应用中,很多gopher并没有真正搞明白defer、return和返回值之间的执行顺序。他们的特点: 多个defer的执行顺序为“后进先出”; defer、return、返回值三者的执行逻辑应该是:return最先执行,return负责将结果写入返回值中;接着defer开始执行一些收尾工作;最后函数携…

继续阅读 Golang中defer、return、返回值和main、init函数的陷阱

Golang Slice 数组的区别,以及指针,值 传递,append, for range 常见题一文搞懂

  • Post author:
  • Post category:golang

Golang Slice 数组的区别,以及指针,值 传递,append, for range 常见题一文搞懂 常见题目 考察知识点 内容 1、golang函数调用传参---值传递和引用传递 2、切片、数组,以及append、索引元素 切片 切片的声明和初始化写法 索引元素 append追加 for range 之k,v 总结 常见题目 比如面试中常问的问题 func main(){ //文字描述:…

继续阅读 Golang Slice 数组的区别,以及指针,值 传递,append, for range 常见题一文搞懂

golang 各版本下载地址

  • Post author:
  • Post category:golang

由于需要翻墙 不好找 因此记下地址,以备日后之所需 https://storage.googleapis.com/golang mac 安装golang 通过 brew search go ➜ test brew search go ==> Formulae algol68g go@1.4 gomplate goto mongodb@3.0 arangodb go@1.8 goocanvas…

继续阅读 golang 各版本下载地址

golang设计模式——结构模式

  • Post author:
  • Post category:golang

文章目录 简介 适配器模式 通俗解释 概念 应用场景 优点 缺点 实例演示 实例1 实例2 桥接模式 通俗解释 概念 应用场景 优点 缺点 实例演示 总结 装饰模式 通俗解释 概念 应用场景 优点 缺点 实例演示 总结 代理模式 通俗解释 概念 应用场景 优点 缺点 实例演示 静态代理 Go Generate 实现 “动态代理” 总结 外观模式 通俗解释 概念 应用场景 优点 缺点 实例演示 享元…

继续阅读 golang设计模式——结构模式

golang的运维开发

  • Post author:
  • Post category:golang

运维开发工程师( devops 工程师) 10k-20k 工作职责: 负责公司基于容器云产品的落地实施。 设计并开发配置管理、发布部署、监控等运维自动化系统。 负责基于开源工具集二次开发,对接平台接口。 推动产品的不断迭代,与项目组配合提出架构优化的方案。 任职要求: 5. 本科以上学历,对云计算(IaaS、PaaS、SaaS)及 DevOps 有一定的了解和见解 6. 熟练掌握 shell 或者…

继续阅读 golang的运维开发

一个golang http包自带的绝佳示例

  • Post author:
  • Post category:golang

package main import ( "bytes" "expvar" "flag" "fmt" "io" "log" "net/http" "os" "os/exec" "strconv" "sync" ) // hello world, the web server var helloRequests = expvar.NewInt("hello-requests") func Hell…

继续阅读 一个golang http包自带的绝佳示例

Golang中defer的实现原理

  • Post author:
  • Post category:golang

前言 在Go语言中,可以使用关键字defer向函数注册退出调用,即主函数退出时,defer后的函数才被调用。defer语句的作用是不管程序是否出现异常,均在函数退出时自动执行相关代码。 所以,defer后面的函数通常又叫做延迟函数 defer规则 1.延迟函数的参数在defer语句出现时就已经确定下来了 func a() { i := 0 defer fmt.Println(i) i++ retu…

继续阅读 Golang中defer的实现原理

Golang(一) 入门

  • Post author:
  • Post category:golang

Golang(一) 一、Go安装 Go官网下载地址 – Go官方镜像站 二、Go入门 1. Go程序 package main //声明程序为main包,表明这是一个可执行文件 import "fmt" //导入内置fmt包 func main() { //main()函数,程序的入口 fmt.Println("hello,go") //终端输出hello,go } 2.Go编译 go build…

继续阅读 Golang(一) 入门

golang判断字符串出现的位置及是否包含

  • Post author:
  • Post category:golang

判断子字符串或字符在父字符串中出现的位置(索引) Index 返回字符串 str 在字符串 s 中的索引( str 的第一个字符的索引),-1 表示字符串 s 不包含 字符串 str : strings.Index(s, str string) int LastIndex 返回字符串 str 在字符串 s 中最后出现位置的索引( str 的第一个字符的索引),-1 表示 字符串 s 不包含字符串 …

继续阅读 golang判断字符串出现的位置及是否包含