随笔分类 - GoLang
摘要:package main import ( "bufio" "fmt" "io" "io/ioutil" "os" ) func main() { //只读方式打开文件 file ,err := os.Open("./main.go") if err != nil { fmt.Println(err
阅读全文
摘要:go env -w GO111MODULE=on go env -w GOPROXY=https://goproxy.io,direct 项目目录下 go mod init gin go mod edit -require github.com/gin-gonic/gin@latest
阅读全文
摘要:1.engine实例的创建 func main(){ engine := gin.Default() //定义个GET请求 /*engine.GET("/", func(c *gin.Context) { c.String(http.StatusOK, "hello World!") })*/ //
阅读全文
摘要:1.互斥锁 互斥锁是对共享资源进行控制,在并发情况下只允许一个对其操作(一个协程访问时其他的都不能访问) var count = 0 var wg sync.WaitGroup var mutex sync.Mutex //声明一个互斥锁 func test(){ mutex.Lock() coun
阅读全文
摘要:通道(Channel) /* 通道(channel)是用来传递数据的一个数据结构。 */ ch1 := make(chan int ,2) //创建一个可读可写的双向管道 ch1 <- 10 ch1 <- 12 m1 := <-ch1 m2 := <-ch1 fmt.Println(m1,m2) c
阅读全文
摘要:进程和线程 进程: 程序在操作系统中的一次执行过程,是系统进行资源分配和调度的基本单位,每一个进程都有自己的一块地址空间 线程: 线程是进程的一个执行实例 一个进程可以创建多个线程 同一个进程中的多个线程可以并发执行 并发和并行(针对多线程) 并发: 多个线程同时竞争一个位置,竞争到的才可以执行,每
阅读全文
摘要:接口 type Usber interface { start() stop() } //如果接口里面有方法 必须使用结构体或自定义类型来实现 type Phone struct { Name string } //手机要实现usb接口必须实现接口所有方法 func (p Phone) start(
阅读全文
摘要:结构体 结构体转JSON(结构体转换成JSON 字段必须是公有的) jsonByte,_ := json.Marshal(s1) //返回一个byte类型数组 s1结构体对象 jsonStr := string(jsonByte) //把byte类型数组转json字符串 JSON转结构体 err :
阅读全文
摘要:Time timeObj := time.Now()fmt.Println(timeObj)year := timeObj.Year()//年month := timeObj.Month()//月day := timeObj.Day()//日hour := timeObj.Hour()//时minu
阅读全文
摘要:数组: 定义: 方式一: arr1 := [...]int{1,2,3} 方式二: arr2 := [3]int{1,2,3} 方式三: var arr3 [3]int 遍历: //遍历数组 for k, v :=range arr3{ fmt.Println("key:%v,value:$v",k
阅读全文
摘要:1.帮助文档地址: https://studygolang.com/pkgdoc 2.核心包图
阅读全文
摘要:https://www.bilibili.com/video/BV1pt41127FZ?from=search&seid=11652856076656638360
阅读全文