当一个资源需要在 goroutine 之间共享时,通道在 goroutine 之间架起了一个管道,并提供了确保同步交换数据的机制。(这是除了 atomic 和 mutex 之外的第三种处理竞态资源的方式) Channel…
分类:go语言
golang下划线的作用
1.下划线在import中 main.go package main import _ "hello/imp" func main() { //imp.Print() //编译报错,说:undefined: imp } …
Go语言
一、数据类型转换 https://studygolang.com/articles/10838 <pre name=”code” class=”java” style…
使用Visual Studio Code调试Golang工程
关键字 最简单的调试攻略 多项目调试, 适用个人开发和项目开发 无需修改系统环境变量 准备VSCode 在官网下载最新版的VSCode: Visual Studio Code – Code Editing. …
Golang - 文件夹遍历
文件夹遍历可以使用filepath.Walk(root string, walkFn filepath.WalkFunc) error来实现,非常方便,root可以是文件夹的绝对路径也可以是文件的绝对路径,但是通常使用文…
【Go语言】编程系列 - 初识 Go语言-1
前言:为什么我们需要一门新语言 互联网时代的C语言需要考虑哪些关键问题呢? 并行与分布式支持 多核化和集群化是互联网时代的典型特 Go语言在语言级别支持协程(轻量级线程)叫goroutin 执行体间的通信 执行体之间的互…
《Go语言四十二章经》第二十二章 通道(channel)
《Go语言四十二章经》第二十二章 通道(channel) 作者:李骁 22.1 通道(channel) Go 奉行通过通信来共享内存,而不是共享内存来通信。所以,channel 是goroutine之间互相通信的通道,g…
go的临时对象池--sync.Pool
一个sync.Pool对象就是一组临时对象的集合。Pool是协程安全的。 Pool用于存储那些被分配了但是没有被使用,而未来可能会使用的值,以减小垃圾回收的压力。一个比较好的例子是fmt包,fmt包总是需要使用一些[]b…
Go语言interface的介绍
Interface 是Go语言里很优秀的一个设计,它本身是仅仅是一个结构体,但是通过interface我们可以实现面向对象的很多特性,比如多态、动态联编等。interface 在Go 语言里使用起来的感觉,相比于其它语言…
golang 获取AB两个日期相差多少天
今天碰到了要求两个日期间相差多少天,两个不同日期的,相差一秒都算一天. 标准库中没有相应的实现,自己写了个. func timeSubDays(t1, t2 time.Time) int { if t1.Location…
Go 语言极速入门总结
Go 语言使用 非常简单,是专门针对各种语言的痛点设计的!!!在前边的源码分析中,分析了 Go 1.11.1 的基本使用姿势,并且通过一个爬虫项目来巩固对各种使用姿势的学习,具体目录见 Go 语言极速入门。 实际上,还有…
Hello Golang
亲(si)爱(ji)的(lao) 宝二爷: 上次你听说我在用 Go,表示也想学,我也答应给你安利一下我上手以来的一点想法。奈何我们都是身不由己的加班狗,一直没有机会细聊这件事。 不过就在今天,听说你给自己定下了 2017…