golang
____Luke
这个作者很懒,什么都没留下…
展开
-
golang pprof 更多详细内容
package mainimport ( "log" "net/http" "net/http/pprof" "strings")func main() { mux := http.NewServeMux() pathPrefix := "/d/pprof/" mux.HandleFunc(pathPrefix, func(w http.ResponseWriter,...原创 2020-04-10 16:49:04 · 254 阅读 · 0 评论 -
golang 输出gif图片
Go语言圣经(中文版) 24页转载 2017-06-01 14:27:44 · 2811 阅读 · 0 评论 -
golang if-else 和 switch-fallthrough 比较
经过比较 if 时间更快!package mainimport ( "fmt" "math/rand" "time")func main() { n := 100000000 st := time.Now() test1(n) fmt.Println(time.Since(st)) st = time.Now() test2(n) fmt.Print原创 2017-06-29 11:05:13 · 1769 阅读 · 1 评论 -
golang websocket 服务器
package mainimport ( "fmt" "log" "net/http" "github.com/soekchl/websocket")func main() { fmt.Println("Start app") http.Handle("/", websocket.Handler(Echo)) if err := http.ListenAndServe("转载 2017-06-27 18:38:05 · 574 阅读 · 0 评论 -
Bit 数组
// An IntSet is a set of small non-negative integers.// Its zero value represents the empty set.type IntSet struct { words []uint64}// Has reports whether the set contains the non-negative value转载 2017-07-18 15:25:37 · 1001 阅读 · 0 评论 -
golang 中 锁的错误的用法会导致死锁。
package mainimport ( "sync" "time" . "github.com/soekchl/myUtils")var mux sync.RWMutexfunc tt() { Notice() mux.Lock() // 3 Notice() defer mux.Unlock() time.Sleep(time.Second * 5)}f原创 2017-07-25 11:07:16 · 4349 阅读 · 0 评论 -
golang 下载图片
想用golang下载图片,因为golang和其他语言相比较不用在复制那么多其他的文件。package mainimport ( "bytes" "fmt" "io" "io/ioutil" "net/http" "os" "strings")func getImg(url string) (n int64, err error) { path := strin转载 2017-10-01 14:45:02 · 6867 阅读 · 1 评论 -
golang 简单的登录操作 http
主函数 main.go// testHtmlLogin project main.gopackage mainimport ( "fmt" "io/ioutil" "net/http" "os" . "github.com/soekchl/myUtils")var ( change = make(map[string][]byte))func init() {原创 2017-10-26 16:42:45 · 6622 阅读 · 0 评论 -
扫码登录 简单实现
简单原理是 服务器生成唯一的 key 附带到login 上用户扫描 二维码 并且访问服务器 服务器反馈登录 状态前端 页面 每隔一段时间扫描 服务器 当前的key是否扫描, 然后后续操作代码:package mainimport ( "fmt" "io" "math/rand" "net/http" "time" . "github.com/soekchl/.原创 2018-06-29 18:20:39 · 1351 阅读 · 0 评论 -
鼠标连点器
按照后台参数 单点 和 记录鼠标位置-多点 源码: package mainimport ( "fmt" "os" "strconv" "time" "github.com/go-vgo/robotgo")type point [2]intvar ( run = false mousePointList []point...原创 2019-01-30 12:32:46 · 3464 阅读 · 3 评论 -
golang http.FileServer 遇到的坑
上次写了一个2行实现一个静态服务器的 文章今天群里有个哥们是这么写居然返回的是404 见鬼了嘛?? http.handle("/js", http.FileServer(http.Dir("js")) http.ListenAndServe("8080", nil)大概的意思就是绑定 路由为 js 的时候访问这个js 文件夹 看了一下确实代码上面没什么毛病。但是路径怎么...转载 2019-04-04 14:27:44 · 2615 阅读 · 0 评论 -
Golang 协程控制关闭
部分代码参考:https://zhuanlan.zhihu.com/p/26695984 这边文章的的package mainimport ( "context" "fmt" "time")func main() { ctx := context.Background() ctx, cancel := context.WithCancel(ctx) go P原创 2017-05-17 18:32:33 · 11772 阅读 · 2 评论 -
golang 真正的高并发用法 查找素数
在原作者的代码上 附上了一些注释方便看懂package mainimport ( "fmt")func main() { sieve()}func generate(ch chan<- int) { for i := 2; ; i++ { ch <- i // Send 'i' to channel 'ch'. }}func filter(src <-c转载 2017-05-26 18:23:12 · 2329 阅读 · 0 评论 -
Golang 使用 C语言 简单操作
/*#include void Print(char * buff){ fprintf(stdout,"%s\n", buff);}*/import "C"import ( "fmt")func main() { C.Print(C.CString("Test"))}简单例子,以后需要的功能自行扩展。原创 2017-04-19 16:17:00 · 832 阅读 · 0 评论 -
Golang 连接 SQL Server
package mainimport ( "database/sql" "fmt" . "github.com/soekchl/myUtils" _ "github.com/soekchl/odbc_for_google" // code.google.com/p/odbc)// 连接 Microsoft SQL 结构体type Mssql struct { *sql.DB原创 2017-02-07 14:39:03 · 3534 阅读 · 0 评论 -
Golang API 类型 Get
package mainimport ( "encoding/json" "fmt" "net/http" "strconv" . "github.com/soekchl/myUtils")type Student struct { Id int Name string phone string // 不显示}var ( students []Stud原创 2017-02-08 13:32:02 · 478 阅读 · 0 评论 -
Golang + MYSQL + Bee 数据库连接和操作
// tsetMysql project main.gopackage mainimport ( "strings" "time" "github.com/astaxie/beego/orm" . "github.com/soekchl/myUtils")type Student struct { Id int64 `orm:"auto"` Nam原创 2017-03-01 10:11:55 · 1235 阅读 · 0 评论 -
Golang Rsa 加密 解密
1)创建私钥:openssl genrsa -out private.pem 1024 //密钥长度,1024觉得不够安全的话可以用2048,但是代价也相应增大2)创建公钥:openssl rsa -in private.pem -pubout -out public.pempublicKey privateKey // 加密f原创 2017-02-07 11:05:49 · 1113 阅读 · 0 评论 -
Golang 中 defer 小坑
package mainimport ( "fmt")func main() { x, y := 1, 2 defer fmt.Println("defer", x, y) defer func() { fmt.Println("defer func", x, y) }() defer func(x int) { fmt.Println("defer func(原创 2017-03-21 16:50:15 · 706 阅读 · 0 评论 -
Golang http client 撤销 request
利用上下文来取消 当前发送出去的请求// tsetStudy1 project main.gopackage mainimport ( "fmt" "net/http" "golang.org/x/net/context")func main() { url := "http://localhost:8080" client := &http.Client{}原创 2017-03-23 22:15:52 · 2445 阅读 · 0 评论 -
golang go-sql-drive mysql连接池的实现
转 :http://www.01happy.com/golang-go-sql-drive-mysql-connection-pooling/golang内部自带了连接池功能,刚开始接触golang的时候不了解这个,还自己搞了一个 sql.Open的对象管理池,真的非常囧啊。sql.Open函数实际上是返回一个连接池对象,不是单个连接。在open的时候并没有去连转载 2017-03-24 14:14:16 · 1010 阅读 · 0 评论 -
HTTP server connection draining(http server优雅的关闭)
转载:http://colobu.com/2016/11/05/golang-18-whats-coming/?utm_source=tuicool&utm_medium=referralBrad Fitzpatrick最近关闭了一个将近四年的issue,这个issue请求实现http.Server的连接耗尽(draining)的功能。现在可以调用srv.Close可以立即停止转载 2017-03-25 11:59:42 · 1261 阅读 · 0 评论 -
Golang Http Middleware 判断 增加cookie
源码:package mainimport ( "fmt" "net/http" . "github.com/soekchl/myUtils")func main() { finalHandler := http.HandlerFunc(final) // 设定最后访问 http.Handle("/", middleware(finalHandler)) // 设置中间原创 2017-03-25 21:39:39 · 645 阅读 · 0 评论 -
Golang Socket Tcp 连接优雅关闭
主要是利用 系统监听Interrupt 信号,并且提前关闭服务器 监听,并且等待先前连接处理完毕后在退出程序。Server 代码:package mainimport ( "net" "os" "os/signal" "strings" "sync" "time" . "github.com/soek原创 2017-03-26 12:34:15 · 17860 阅读 · 0 评论 -
Golang http Get 和 Post
// testHttpGetPost project main.gopackage mainimport ("fmt""io/ioutil""net/http""strings". "github.com/soekchl/myUtils")const (source_url = "https://w原创 2017-02-07 11:29:18 · 795 阅读 · 0 评论