GO
smilesundream
这个作者很懒,什么都没留下…
展开
-
Channel详解
转载:https://blog.csdn.net/kongdefei5000/article/details/75209005Golang使用Groutine和channels实现了CSP(Communicating Sequential Processes)模型,channles在goroutine的通信和同步中承担着重要的角色。在GopherCon 2017中,Golang专家Kavya深入介...转载 2018-05-05 20:01:29 · 67739 阅读 · 0 评论 -
Go json 特殊字符转换(2019.10.24)
Go的 < > &等特殊字符转为Json串时会因为为了避免被识别为Html文本(<和>) 会进行特殊转码,所以在生成json串后,可以自行转换msgBytes = bytes.Replace(msgBytes, []byte("\\u003c"), []byte("<"), -1)msgBytes = bytes.Replace(msgBytes,...原创 2019-02-07 22:58:10 · 1321 阅读 · 0 评论 -
Flate压缩(2019.10.23)
func main() { buf := bytes.NewBuffer(nil) //新建一个buffer缓存区: flateWriter, err := flate.NewWriter(buf, flate.BestCompression) if err!=nil { fmt.Println("new writer error"+err.Error()) return }...原创 2019-02-01 22:01:45 · 2201 阅读 · 0 评论 -
Go路径设置
GoROOT:Go的安装目录GoPATH:约定有三个子目录src:存放源代码目录 pkg:存放中间文件 bin:存放可执行文件假设当前为/home/project/src/main.c则GoPATH设为:/home/project/os.OpenFile("src/main.c")...原创 2019-01-17 15:31:53 · 1555 阅读 · 0 评论 -
go dns解析
package mainimport ( "net" "fmt" "os")func main() { ns, err := net.LookupHost("www.baidu.com") if err != nil { fmt.Fprintf(os.Stderr, "Err: %s", err.Error()) return } for _, n := ...原创 2018-12-20 21:00:29 · 813 阅读 · 0 评论 -
Go 容易踩的坑
defer函数延迟执行,但是会在return执行前, for _,stu := range stus;stu是进行的值拷贝 go的map是并发不安全的,读和写都要加锁 go中没有继承的概念,只有组合,调用哪个方法由调用对象决定参考:https://yushuangqi.com/blog/2017/golang-mian-shi-ti-da-an-yujie-xi.html...原创 2018-12-09 00:42:08 · 203 阅读 · 0 评论 -
web搭建路径链接问题(2019.10.24)
文件树如图:html/index.html文件:<img src="/static/logo.png">direct:main.go文件create函数中http.Redirect(w, r, "/query/", http.StatusFound)路由设置:main.go文件中 http.Handle("/static/", http.FileSer...原创 2018-11-15 11:58:35 · 216 阅读 · 0 评论 -
go 输出输出重定向到文件(2019.10.24)
f, _ := os.OpenFile("/home/fmt.log", os.O_WRONLY|os.O_CREATE|os.O_SYNC|os.O_APPEND,0755)os.Stdout = fos.Stderr = f原创 2018-11-08 20:19:49 · 7084 阅读 · 0 评论 -
go解析json(2019.10.24)
package main import ( "fmt" "encoding/json" "strconv")type tt struct { TaskId interface{} `json:"_taskid"`}...原创 2018-09-20 10:36:06 · 356 阅读 · 0 评论 -
GO 内存监控 runtime.MemStats
http://lib.csdn.net/article/go/68270?knId=1441转载 2018-09-24 10:54:55 · 3691 阅读 · 0 评论 -
go 文件操作
转载:https://www.jb51.net/article/58142.htm文件操作是个很重要的话题,使用也非常频繁,熟悉如何操作文件是必不可少的。Golang 对文件的支持是在 os package 里,具体操作都封装在 type File struct {} 结构体中。一、func Open(name string) (file *File, err error)再简单不过了,...转载 2018-09-24 08:58:59 · 386 阅读 · 0 评论 -
Go方法定义
一、方法定义package mainimport "fmt"type INTEGER int//自定义类型INTEGER/*1.为INTEGER类型添加add方法2.这里的接收器为a,类型是INTEGER,基类型是INTEGER*/func (a INTEGER) add(b INTEGER) (sum INTEGER) { sum = a+b return sum...原创 2018-07-23 16:34:08 · 895 阅读 · 0 评论 -
go 访问连接池
连接池原理讲解原创 2018-05-16 20:23:26 · 451 阅读 · 0 评论 -
GO Channel并发、死锁问题
如果不是我对真正并行的线程的追求,就不会认识到Go有多么的迷人。Go语言从语言层面上就支持了并发,这与其他语言大不一样,不像以前我们要用Thread库 来新建线程,还要用线程安全的队列库来共享数据。以下是我入门的学习笔记。Go语言的goroutines、信道和死锁goroutineGo语言中有个概念叫做goroutine, 这类似我们熟知的线程,但是更轻。以下的程序,我们串行地去执行两次loop函...转载 2018-05-05 20:17:18 · 5802 阅读 · 3 评论 -
Go reflect(2019.10.22)
Golang的反射reflect深入理解和示例[TOC]Golang的反射reflect深入理解和示例【记录于2018年2月】编程语言中反射的概念在计算机科学领域,反射是指一类应用,它们能够自描述和自控制。也就是说,这类应用通过采用某种机制来实现对自己行为的描述(self-representation)和监测(examination),并能根据自身行为的状态和结果,调整或修改应...原创 2019-01-30 17:54:17 · 481 阅读 · 0 评论