
golang
kph_Hajash
三年服务端(直播推拉流)经验、三年客户端(网络库基础组件)经验
展开
-
golang runtime.Caller(skip int) 介绍
函数原型,及官方描述:func Caller(skip int) (pc uintptr, file string, line int, ok bool)// 函数用途Caller reports file and line number information about function invocations on the calling goroutine's stack. 参数:The argument skip is the number of stack frames to as原创 2020-05-10 16:52:23 · 1702 阅读 · 0 评论 -
梳理 golang 项目源码时的几点收获
今天在看一个 golang 项目的源码时,有几个地方没明白,然后顺手谷歌了一会,初步知道了原因。1、验证结构体是否实现了某个接口假设接口如下:type IModule interface { Name() string Version() string}某个需要实现该接口的结构体如下:type StatModule struct {}现在的问题是,如何确保 StatModu...原创 2020-04-16 11:00:56 · 246 阅读 · 0 评论 -
安装 golang 包 transform 时出错:dial tcp 216.58.203.17:443: i/o timeout
golang 项目中使用 go get 安装 golang.org/x/text/transform 包时出现相应超时,同样的还有 golang.org/x/text/unicode/norm,谷歌后发现是因为网站被墙了,在确保能访问到外网以后,删除本地 golang.org/x/text ,然后执行:go get golang.org/x/text/transform即可,此时 tex...原创 2018-11-07 19:53:58 · 20446 阅读 · 0 评论 -
Golang 的 Gin 框架 Engine 与 IRouter 的关系分析
简言之,IRouter 是一个接口,而 Engine 实现了它。因此 Engine 算是 IRouter 的一个实例。分析如下,参考链接:https://godoc.org/github.com/gin-gonic/gin#RouterGroup首先在该链接中找到 type IRouter,可知 IRouter 为 interface,有一个成员函数 Group 且嵌入了 IRoutes。...原创 2018-07-02 17:08:18 · 3873 阅读 · 0 评论 -
golang 中 strings 包的 Replace 用法介绍
函数声明为:func Replace(s, old, new string, n int) string官方描述为:返回将s中前n个不重叠old子串都替换为new的新字符串,如果n<0会替换所有old子串。示例代码为:package mainimport ( "fmt" "strings&原创 2018-06-20 17:37:05 · 109463 阅读 · 2 评论 -
golang 中 path 包的 Dir 和 Join 用法介绍
1)原创 2018-06-20 16:25:20 · 26195 阅读 · 0 评论 -
Golang 学习笔记(不定期更新)
本文主要记录作者使用 Go 开发过程中的问题及总计。1)每个包如果有 init(), 则全部会默认执行。 比如: (1) main.gopackage mainimport ( "fmt" "test/subp原创 2018-06-20 14:51:39 · 250 阅读 · 0 评论 -
golang 的 strings 包的 Trim 的用法介绍
函数声明:func Trim(s string, cutset string) string官方描述:返回将 s 前后端所有 cutset 包含的 utf-8 码值都去掉的字符串。示例代码:package mainimport ( "fmt" "strings" _ "test/subpac")func main(){ fmt.P..原创 2018-06-22 12:48:10 · 73974 阅读 · 2 评论 -
golang 中 signal 包的 Notify 函数用法介绍
函数声明为:func Notify(c chan<- os.Signal, sig ...os.Signal)官方描述:Notify函数让signal包将输入信号转发到c。如果没有列出要传递的信号,会将所有输入信号传递到c;否则只传递列出的输入信号。signal包不会为了向c发送信息而阻塞(就是说如果发送时c阻塞了,signal包会直接放弃):调用者应该保证c有足够的缓存...原创 2018-06-20 18:08:17 · 17856 阅读 · 0 评论 -
Golang 使用 JSON unmarshal 数字到 interface{} 数字变成 float64 类型
碰到这个问题一脸疑惑,后来不断谷歌才找到答案,小白用户献上解析如下:这是由于JSON里的数字默认都会转成golang的float64类型引起的进行json解析时,若以interface{}接收数据,则会按照下列规则进行解析:bool, for JSON booleansfloat64, for JSON numbersstring, for JSON strings原创 2017-08-19 00:22:31 · 22969 阅读 · 0 评论