1 go的协程本质上还是系统的线程调用,而Python中的协程是eventloop模型实现,所以虽然都叫协程,但并不是一个东西;
encoding/json
知识点1
type M struct {
// 不进行序列化
N string `json:"-"`
// 当字段为空的时候(对int 类型而言,即为初始值0的时候),不进行序列化
Field int `json:",omitempty"`
>"`
}
JSON反序列化成interface{}对Number的处理
当没有指定类型的时候,默认情况下,JSON中的数字类型,默认被反序列化成float64类型, 如果需要的化,可以使用 Decoder 类型:
type Response struct {
Name string
Num interface{}
}
// get response from remote service ...
response := &Response{}
dec := json.NewDecoder(resp.Body)
dec.UseNumber()
dec.Decode(response)
// user Number, number 为 int64 类型
response.Num.(json.Number).Int64()
// number 为 float64
response.Num.(json.Number).Float64()