Golang 解析json

  • Post author:
  • Post category:golang

如果json是map结构 strJson { "总就业人数": 1375.66, "第一产业": 40.83, "第二产业": 422.82, "省代码": 310000.0, "省": "上海市", "市代码": 310000.0, "市": "上海市", "类型": "直辖市" } var f interface{} json.Unmarshal([]byte(strJson), &f…

继续阅读 Golang 解析json

golang-goroutine(协程)和channel(管道)

  • Post author:
  • Post category:golang

传统进程和线程概念介绍: 并发和并行概念介绍: golang协程(goroutine) golang协程的特点 有独立的栈空间(栈可理解为数值类型,由堆中copy或引用到个体栈空间) 共享程序堆空间(堆可理解为引用数据类型) 调度由用户控制(线程启动和停止都可由用户控制,java则不行 ) 协程是轻量级的线程(理论上轻松可启上万条线程) package main import ( "fmt" "s…

继续阅读 golang-goroutine(协程)和channel(管道)

一个例子说明golang为什么要用atomic包进行原子操作

  • Post author:
  • Post category:golang

最近在读这个包,网上搜了一些文章,对语法解析了很多,没什么难度,大意上也理解了,但是我缺少一个错误的例子。索性自己写一个。 估计很多人和我一样,不学个反例,是不会心甘情愿去学新东西的。 首先是一个不用协程的简单自增 a := int(0) for i := 0; i < 1000; i++ { a++ } fmt.Println(a)//结果是1000 然后我要增加协程了,开多个协程去进行同…

继续阅读 一个例子说明golang为什么要用atomic包进行原子操作

golang:如何在proto3中用上golang对应的interface{}类型

  • Post author:
  • Post category:golang

首先,我希望所有golang中用于http请求响应的结构,都使用proto3来定义。 麻烦的是,有的情况下某个字段的类型可能是动态的,对应的JSON类型可能是number/string/boolean/null中的其中一种。 一开始我尝试用proto.Any类型,就像这样: import "google/protobuf/any.proto"; message MyRequest{ google.…

继续阅读 golang:如何在proto3中用上golang对应的interface{}类型

golang信号处理及优雅退出

  • Post author:
  • Post category:golang

每个平台的信号定义或许有些不同。下面列出了POSIX中定义的信号。 Linux 使用34-64信号用作实时系统中。 命令man 7 signal提供了官方的信号介绍。 在POSIX.1-1990标准中定义的信号列表 在SUSv2和POSIX.1-2001标准中的信号列表: kill pid 与 kill -9 pid的区别 kill pid的作用是向进程号为pid的进程发送SIGTERM(这是ki…

继续阅读 golang信号处理及优雅退出

golang相关开源库

  • Post author:
  • Post category:golang

WEB框架 1.Gin https://github.com/gin-gonic/gin 2.Beego https://github.com/astaxie/beego 3.martini https://github.com/go-martini/martini HTTP 1.httprouter https://github.com/julienschmidt/httprouter 2.fa…

继续阅读 golang相关开源库

golang—实现wake on lan

  • Post author:
  • Post category:golang

实现逻辑 就是通过UDP向广播地址255.255.255.255:9发送一个称为“魔术包”的数据包。被唤醒主机关机之后需要和程序所在主机通过网线连接,才能收到这个数据包。被唤醒主机收到之后就会开机。 配置需要被唤醒的主机 我的台式主机试DELL的,dell官网有相关的配置方法,其他的可能有区别需要查询 我的主机配置方法 实施唤醒操作的程序 要注意的是 :程序所在的主机,要确保一定有一次的数据包是通…

继续阅读 golang—实现wake on lan

mac 下golang 环境配置

  • Post author:
  • Post category:golang

1、export PATH=/usr/local/bin:$PATH 2、brew install go 3、vim .bash_profile export GOPATH=/usr/local/Cellar/go/1.13.4 export GOBIN=$GOPATH/bin export PATH=$PATH:$GOBIN 输入source ~/.bash_profile 完成对golang环…

继续阅读 mac 下golang 环境配置

golang反向代理使用

  • Post author:
  • Post category:golang

图片引用网络。 反向代理具体含义这里就不在进行讲述了,想看详细信息,可自行百度查看。 我们这里直接上代码进行描述。 package main import ( _ "fmt" "io" _ "log" "net/http" "net/http/httputil" "net/url" _ "strings" ) func main() { /*localHost := "127.0.0.1:8080…

继续阅读 golang反向代理使用

Golang String字符串类型转Json格式

  • Post author:
  • Post category:golang

Go语言的转换 go的string字符串格式转json格式 确实有点麻烦,如果不知道json里面的类型好像就构建不了结构体了。 package main import ( "encoding/json" "fmt" ) type Data struct { Status int `json:"status"` Msg int `json:"msg"` } func main() { msg := …

继续阅读 Golang String字符串类型转Json格式