
Go及工作爬坑
文章平均质量分 51
记录学习过程
工作中的问题解决过程,抽象了使用背景及思路 避免公司内容泄漏
巴塞罗那的风
找到解决问题的乐趣是很重要的,虽然这可能是一个漫长的过程
看梅西喝农夫山泉;某大厂搜索后端go
展开
-
golang关于slice map函数传参的小问题
golang 切片 map的函数值传递问题原创 2024-09-02 20:57:49 · 793 阅读 · 0 评论 -
golang sync.Map真的全场景适用吗?
工作中遇到的map并发读写问题的解决思路原创 2024-06-05 17:33:15 · 441 阅读 · 0 评论 -
once.Do如何保证只执行一次(勿喷
【代码】once.Do如何保证只执行一次(勿喷。原创 2024-05-16 12:49:59 · 149 阅读 · 0 评论 -
Benchmark优化小计
参考1:https://www.cnblogs.com/yahuian/p/go-benchmark.html#%E5%BF%AB%E9%80%9F%E5%BC%80%E5%A7%8B参考2:https://blog.youkuaiyun.com/YouMing_Li/article/details/135888953。原创 2024-04-25 16:58:39 · 253 阅读 · 0 评论 -
记一个有趣的bug:panic执行时机
msg在算子不报错误的情况下不被赋值,所以这里不会打印错误日志,后面收拢了该模块的错误码,导致msg在retuen的时候被赋值,defer执行时检测到msg不为空所以出了一条错误信息。其实这并不是一个Bug,只是在收拢一个后端模块的错误日志和错误码时发现在请求成功时始终会多一条错误日志。关于defer执行时间和为什么会出现这个问题可以参考下面。原创 2024-01-29 19:01:45 · 277 阅读 · 0 评论 -
记一个有趣的bug:修改结构体中的切片不生效
记工作中的有趣bug原创 2023-08-30 16:32:52 · 180 阅读 · 0 评论 -
ptorobuffer go生成pb.go文件报错
go生成pb.go文件报错原创 2022-06-07 10:42:10 · 468 阅读 · 1 评论 -
vscode,go get后import爆红却可以运行
问题描述:重启了一下vscode之后发现之前通过go get下载的第三方库在import时飘红,但是可以运行飘红发现这些包在pkg/mod目录下,虽然可以运行但是强迫症害死人终于找到了同样的问题并成功解决解法这里我直接通过vscode进入helloworld01这个文件夹,飘红消失,并可以正常运行...原创 2022-05-02 18:37:06 · 2208 阅读 · 0 评论 -
设计模式汇总(未完待续)【Go基础】
package mainimport "fmt"type Fruit interface { grant() pick()}type Apple struct { name string}func (a *Apple) grant() { fmt.Println("种植", a.name, "苹果")}func (a *Apple) pick() { fmt.Println("采摘", a.name, "苹果")}type Orange struct { name原创 2022-05-02 17:23:58 · 400 阅读 · 0 评论 -
方法[Go基础]
文章目录方法普通写法值接收者和指针接收者类似手动实现深拷贝问题举例1解决方法方法调用一般调用方法值方法表达式方法个人理解:函数只是为了实现某一功能,而方法是针对某一数据结构实现特定的方法Go语言的类型方法本质上就是一个函数方法的接收者类型并非一定要是struct类型,type定义的类型别名,slice,mao,channel,func都可以struct和方法不一定要在一个文件,但要在一个包中//类型方法接收者是值类型func (t TypeName) 方法名(参数列表) (返回参数) {原创 2022-04-04 12:57:43 · 579 阅读 · 0 评论 -
接口 interface
接口原创 2022-03-24 15:54:37 · 492 阅读 · 0 评论 -
结构体【Go基础】
结构体(居然没有类!!! 那对象去哪找!!!!)原创 2022-03-21 20:35:27 · 950 阅读 · 0 评论 -
函数,闭包,defer
函数,闭包,defer原创 2022-03-21 16:49:28 · 578 阅读 · 0 评论 -
指针,make,new,map
指针,make,newmap后续会补充原创 2022-03-21 16:47:45 · 273 阅读 · 0 评论 -
切片 []type,形似C++ vector【Go基础】
slice[]type,底层是数组原创 2022-03-21 16:46:37 · 985 阅读 · 0 评论 -
数组 [length] type
数组,长度不可变长度和变量类型都属于数组的属性原创 2022-03-21 16:44:50 · 284 阅读 · 0 评论 -
流程控制【Go基础】
if,for,switch原创 2022-03-21 16:43:28 · 376 阅读 · 0 评论 -
字符串【Go基础】
Go中的string,简单总结,后续会补充原创 2022-03-21 16:34:36 · 358 阅读 · 0 评论 -
基础数据类型和占位符 【Go基础】
基础数据类型和占位符的 简单总结原创 2022-03-21 16:32:46 · 887 阅读 · 0 评论 -
变量和常量【Go基础】
文章目录变量标准声明批量声明短变量声明匿名变量变量赋值常量iota常见示例变量标准声明var 变量名 变量类型var studentName string变量声明可以写在函数外,但是全局变量不能和函数体内的局部变量重名,并且声明的变量必须使用(全局变量除外),变量声明采用小驼峰命名批量声明var ( name strig age int)短变量声明只能写在函数内部name := "messi"匿名变量匿名变量用_表示,匿名变量不会被分配内存,也不占用命名空间,例原创 2022-03-18 23:27:56 · 508 阅读 · 0 评论 -
Go:dlv dap --check-go-version=false的一种解决方案
问题描述:隔了很久,当我再次打开vscode去写go的代码时,一运行,报的错误如标题所示,此时程序无法运行,也无法debug,通过如下命令解决之go install github.com/go-delve/delve/cmd/dlv@latest希望对大家有帮助...原创 2022-03-11 10:15:44 · 2326 阅读 · 0 评论 -
Mac M1芯片,VSCode配置Go开发环境及遇到的问题
本文仅用于记录在自己的Mac(M1芯片)上配置Go开发环境的过程原创 2021-12-08 16:28:24 · 1360 阅读 · 0 评论 -
编译swarmkit记录以及遇到的问题
go get超时,go get警告,go:cannot find main module原因原创 2021-11-23 20:43:55 · 500 阅读 · 2 评论