Go学习笔记
Mush1
这个作者很懒,什么都没留下…
展开
-
Go学习笔记 制作一个能被世界人民使用的工具包!
在github上创建一个公共库将公共库使用git关联到本地项目git initgit add .git commit -m '提交信息'// 将本地仓库与远程仓库绑定(地址为远程仓库的地址)git remote add origin https://github.com/mushi/test.gitgit push origin masterPS:在这过程中你可能会遇到"fatal: refusing to merge unrelated histories"的问题,你可以参.原创 2021-01-23 19:13:31 · 150 阅读 · 0 评论 -
Go学习笔记 Docker安装Nacos教程
第一步:下载镜像docker pull nacos/nacos-server:1.3.1第二步:创建挂载文件目录mkdir -p /opt/nacos/init.dcd /opt/nacos/init.dtouch custom.properties第三步:添加配置在custom.properties文件中填写如下配置:management.endpoints.web.exposure.include=*第四步:创建并启动容器docker run -d -p 8848:8848 -原创 2021-01-10 17:34:06 · 152 阅读 · 0 评论 -
Go学习笔记 Context上下文
什么是上下文Context 也叫作“上下文”,是一个比较抽象的概念,一般理解为程序单元的一个运行状态、现场、快照。其中上下是指存在上下层的传递,上会把内容传递给下,程序单元则指的是 Goroutine。每个 Goroutine 在执行之前,都要先知道程序当前的执行状态,通常将这些执行状态封装在一个 Context 变量中,传递给要执行的 Goroutine 中。(个人理解为goroutine运行时的环境)Context的结构type Context interface { // 返回该上下原创 2020-12-25 18:10:40 · 306 阅读 · 0 评论 -
Go学习笔记 值拷贝和引用拷贝
只有map,slice,chan是引用类型,其拷贝为引用拷贝值拷贝package main import "fmt" func modify(a [3]int) { a[0] = 4 } func main() { a := [3]int{1, 2, 3} modify(a) fmt.Println(a) }这种情况是值拷贝,返回[1, 2, 3]引用拷贝func main() { a := make([]i原创 2020-12-23 15:34:58 · 707 阅读 · 0 评论 -
Go语言学习笔记 利用cron执行定时脚本
import "github.com/robfig/cron"func main() { // 启动一个gorutine执行定时脚本 go func() { // 定时脚本 global.AppLog.Info("Starting FillBillCycle...") c := cron.New() // 新建一个定时任务对象 c.AddFunc("20 */2 * * * *", func() { Cycle() }) // 给对象增加定时任务 c.St.原创 2020-12-12 19:02:24 · 321 阅读 · 0 评论 -
Go语言学习笔记 grom追加事务
// 开始事务tx := db.Begin()// 在事务中做一些数据库操作(从这一点使用'tx',而不是'db')tx.Create(...)// ...// 发生错误时回滚事务tx.Rollback()// 或提交事务tx.Commit()基于grom,go中如何接收错误并回滚func test() (finErr error) { // 开启事务 tx := db.Begin() global.AppLog.Info("Begin Transaction...")原创 2020-12-12 18:43:20 · 285 阅读 · 0 评论 -
Go语言学习笔记 gRPC基础学习
1.利用protobuf定义一个服务,类似于定义一个接口syntax = "proto3";option java_package = "io.grpc.examples";package helloworld;// The greeter service definition.service Greeter { // Sends a greeting rpc SayHello (HelloRequest) returns (HelloReply) {}}// The requ原创 2020-11-19 13:50:07 · 162 阅读 · 0 评论 -
Go语言学习笔记 时间转换函数
// TimeToTimestamp string类型的时间转为时间戳func TimeToTimestamp(t string) int64 { if t == "" { return 0 } timeLayout := "2006-01-02" switch len(t) { case 10: timeLayout = "2006-01-02" case 19: timeLayout = "2006-01-02 15:04:05" } loc, _ := time.Loa原创 2020-11-17 18:05:12 · 185 阅读 · 0 评论