
golang
golang学习笔记,学习过程中碰到的问题和学习的案例
幽_篁
It makes sense to be busy living or busy dying.
展开
-
go 使用gorm查询数据失败,sql: Scan error on column index 1, name “created_at“: unsupported Scan, storing driv
sql: Scan error on column index 1, name "created_at": unsupported Scan, storing driver.Value type []uint8 into type *time.Time原创 2024-03-26 21:45:21 · 820 阅读 · 0 评论 -
go运行时状态信息
go运行时状态信息内存runtime.ReadMemStats(&ms) 获取内存分配信息,可以定时收集,发送给时序数据库做监控统计gc 数据ReadGCStats 获取最近的GC统计信息,可以定时收集,发送给时序数据库做监控统计协程数runtime.NumGoroutine 获取当前协程数,可以定时收集,发送给时序数据库做监控统计panic 堆栈信息日志查询pporf实现 flag.StringVar(&cpuprofile, "cpuprofile", ""原创 2022-05-24 12:44:17 · 1155 阅读 · 0 评论 -
vscode远程调试
vscode 远程调试1.设置代理地址go env -w GOPROXY=https://goproxy.cn,direct2.被调试机设置环境变量 sudo vim /etc/profile##编辑文本首行加入如下:export GOPATH=/root/goexport PATH=${PATH}:${GOPATH}/bin##wq保存退出sudo source /etc/profile远程调试机 dlv 开启监听dlv attach $1 --headless --api-原创 2022-05-24 12:43:26 · 348 阅读 · 0 评论 -
golang 常用快捷键,编译linux程序参数设置,编译不显示DOS窗口命令
整理下个人在开发过程中常用的快捷键:Debugging单步进入 F7单步越过 F8运行到光标 Alt + F9恢复程序 F9设置/取消断点 Ctrl + F8查看断点 Ctrl + Shift + F8Search / Replace搜寻所有 Double Shift查找(当前页查找) Ctrl + F查找方法或者变量 Ctrl + Shift ...原创 2021-01-05 11:22:05 · 422 阅读 · 0 评论 -
golang 中 make 和 空值 的用法 [golang学习笔记7]
1. makegolang 分配内存主要有内置函数new和make,今天我们来探究一下make有哪些玩法。map只能为slice, map, channel分配内存,并返回一个初始化的值。分别看下对应类型 make 的用法:slice首先来看下slice 的 make用法:1. make([]int, 2)2. make([]int, 2, 4)第一种用法,指定了长度,例如make([]int, 2)返回的是一个长度为2的 slice第二种用法,第二参数指定的是切片的长度,第三原创 2020-06-30 11:22:04 · 2492 阅读 · 0 评论 -
golang 中 sync包的 WaitGroup [golang学习笔记6]
golang 中 sync包的 WaitGroup golang 中的 sync 包有一个很有用的功能,就是 WaitGroup 先说说 WaitGroup 的用途:它能够一直等到所有的 goroutine 执行完成,并且阻塞主线程的执行,直到所有的 goroutine 执行完成。 WaitGroup 总共有三个方法:Add(delta int), Done(), Wait()。简单的说一下这三个方法的作用。 Add:添加或者减少等待 goroutine 的数量 Done:相当转载 2020-06-19 16:03:37 · 165 阅读 · 0 评论 -
Go channel [golang学习笔记5]
Go channel [golang学习笔记5]1.Go 对 CSP 的实现goroutinechannel2. goroutine的实现3. channel的实现不带缓冲区:带缓冲区:管道,串联的channel(Pipeline)单向通道类型注意:常见的几个goroutine死锁select多路复用1.Go 对 CSP 的实现要想理解 goalng channel 要先知道 CSP 模型。C...原创 2020-04-24 16:56:21 · 199 阅读 · 0 评论 -
Golang文件名命名规则 [golang学习笔记4]
Golang文件名命名规则今天在写项目时,突然发现,有个自己实现的示例文件redis_test.go,无法调用到文件内部的接口,理所当然就不能验证自己写的示例了,顿时一脸懵逼,查了一些资料才发现,go的一些文件需要遵循一些命名规则,如下做一些总结笔记。下面对文件名命令规则的说明:1、平台区分文件名_平台平台可选为:windows, unix, posix, plan9, da...转载 2020-04-09 10:58:45 · 3508 阅读 · 0 评论 -
golang的函数和接口以及interface [golang学习笔记3]
1.函数1.1 函数定义Go 语言函数定义格式如下:func function_name( [parameter list] ) ([return_types list]) { 函数体}函数定义解析:func:函数由 func 开始声明function_name:函数名称,函数名和参数列表一起构成了函数签名。parameter list:参数列表,参数就像一个占位符...原创 2020-03-27 16:45:34 · 441 阅读 · 0 评论 -
go mod常用命令 [golang 学习笔记2]
1.go mod介绍go mod 是Golang 1.11 版本引入的官方包(package)依赖管理工具。Golang 提供一个环境变量GO111MODULE 来设置是否使用mod,它有3个可选值,分别是off, on, auto(默认值),具体含义如下: off: GOPATH mode,查找vendor和GOPATH目录 on:module-aware mode,使...原创 2020-03-26 10:49:15 · 521 阅读 · 0 评论 -
新手疑惑的import导包 [golang 学习笔记1]
一 包的导入语法 在写Go代码的时候经常用到import这个命令用来导入包文件,看到的方式参考如下: import "fmt" //如果只有一个包可以直接在import后面加上要导入的包 //如果包含一个或以上包可以使用 import(),在挂号里依次加入需要导入的包 import( "fmt" "os" ) 然后...原创 2020-03-25 11:17:08 · 337 阅读 · 0 评论