引入外部package出错 package golang.org/x/tools/cmd/goimports: unrecognized import path "golang.org/x/tools/cmd/goimp…
标签:go
golang条件编译
开篇 golang中没有类似C语言中条件编译的写法,比如在C代码中可以使用如下语法做一些条件编译,结合宏定义来使用可以实现诸如按需编译release和debug版本代码的需求 #ifndef #define ... #e…
修改golang源代码获取goroutine id实现ThreadLocal
开篇 golang在http.Request中提供了一个Context用于存储kv对,我们可以通过这个来存储请求相关的数据。在请求入口,我们把唯一的requstID存储到context中,在后续需要调用的地方把值取出来打…
golang源码安装时fatal error: MSpanList_Insert错误
原本使用的golang是1.9版本,今天想升到最新的1.11。遇到如下错误 failed MSpanList_Insert 0x905000 0x9b51f3c97b8 0x0 0x0 fatal error: MSpa…
使用go写的微信jssdk
使用go写的微信jssdk 使用方法参考main.go package main import ( "fmt" "sfwechat/jssdk" ) func main() { jssdk := jssdk.New("w…
全面升级后的开源云盘不了解一下么?蓝眼云盘 2.0 发布
蓝眼云盘的 Github 地址,请随手点个 star,谢谢啦。 部分软件截图: 2018 年 1 月份的时候,蓝眼云盘 1.0 刚开发完毕,那时候一个 star 都没有。为了让自己的这个开源项目看起来像那么回事…
基于go的反射实现查询生成器
基于go的反射实现查询生成器 参考go系列教材反射章节,源代码没有实现输出字段,我根据对反射的理解实现了对字段进行输出。beego的orm就是基于反射实现的。 /* # @Time : 2019-01-05 16:57 …
go-micro 框架源码剖析 之 函数选项模式
近期在查阅go-micro源码过程中发现,在设置创建微服务的参数选项时都依赖于项目外层一个名为 github.com/micro/go-micro/options.go的文件,它定义了创建一个微服务所需要的各种参数选项,…
Go routine调度
go routine的调度原理和操作系统的线层调度是比较相似的。这里我们将介绍go routine的相关知识。 goroutine(有人也称之为协程)本质上go的用户级线程的实现,这种用户级线程是运行在内核级线程之上。当…
Golang中下划线的使用
在 Golang 里, _ (下划线)是个特殊的标识符。前几天看 gin 源码,看到一个有意思的用法。虽然网上的总结博客已有很多,但是总是有点欠缺,于是就有了这一篇,方便以后查阅。 用在 import 在导包的时候,常见…
Gin使用
这里的博客版本都不会被更新维护。查看最新的版本请移步: http://neojos.com Gin对net/http包做了封装,支持路由、中间件等特性,极大的方便对Http Server的开发。文章通过一个Test例子,…
Go编译器简介【译】
趁着元旦休假+春节,尝试把2018年期间让我受益的一些文章、问答,翻译一下。欢迎指正、讨论,希望对你也有所帮助。原文链接:https://github.com/golang/go/… 构成Go编译器的关键pa…