
Golang
文章平均质量分 66
Iconoclast_wu
IT男
展开
-
Go-Goroutine-Channel-基础理解
Go 提供了一个关键字go 用于执行并发操作的关键字原创 2014-06-01 18:59:27 · 3906 阅读 · 0 评论 -
GoConvey_初步认识
GoConvey 是一款针对Go语言的testing框架 支持自动保存原创 2014-08-02 17:05:01 · 5377 阅读 · 0 评论 -
Go-XPath解析
使用Go做爬虫首先想到了XPath解析来做于是上网搜在github原创 2014-07-11 19:15:24 · 4857 阅读 · 0 评论 -
Go_闭包_基础理解
在golang中也是支持闭包的首先先解释下什原创 2014-06-01 10:16:55 · 1212 阅读 · 0 评论 -
关于Go语言数组索引的有趣现象
在Twitter上看到Dave Cheney提了个pop quiz 勾起了我的好奇心,可以猜下下面这段代码的运行结果。package mainimport "fmt"func main() { a := [...]int{5, 4: 1, 0, 2: 3, 2, 1: 4} fmt.Println(a)}go run 一下结果就出来了 但是比较有意思的是结果是[5原创 2014-09-08 12:36:28 · 1324 阅读 · 0 评论 -
Go_关于组合的一个案例
A Init()有400 行初始化代码 并且其中调用了某个行为 Fuck() 但是希望这个位置所调用的Fuck方法 不一定是A自己实现的 比如B 组合了A 在调用 A的 Init方法时 希望A的Init方法中的Fuck()调用 是调用了B的Fuck而不是A本身的Fuck这是如果在不使用接口的情况下是没有办法实现的这时就只有使用接口才能实现此功能将 Fuck 提取原创 2014-08-13 23:54:52 · 544 阅读 · 0 评论 -
Go_Json_Unmarshal_Marshal
Go Json 中 RFC 4627原创 2014-08-31 21:55:54 · 9746 阅读 · 2 评论 -
Can not import $GOPATH package on Intellij Idea
最近新买了电脑重新安装了一遍软件,真是够麻烦的。以后服务器还是用docker来玩吧 要不换个服务器,还真是得累死。在重装的过程中遇到了一个问题 Can not import $GOPATH package on Intellij Idea 以前解决过 但是没有记录 导致我这回又折腾了好一会才能好 所以还是记录一下吧首先Go 的环境自己安装好 Goroot Gopath一个都不能少,这里原创 2014-09-01 22:11:16 · 2852 阅读 · 0 评论 -
Go_Json_HTMLEscape_Compact
package mainimport ( "bytes" "encoding/json" "fmt" "io" "strings")//HTMLEscape 函数将添加Buffer中的特殊字符串进行转义//(Buffer中本来就有的字节不会转义只会转义后来添加的)//Compact 对这些特殊字符不进行转义 但是有一个作用就是在//拼接字符串时 如果后面的字符串有问题那么原创 2014-09-03 22:46:56 · 2112 阅读 · 0 评论 -
Goroutine的底部到底对应多少线程呢?
Go programming language 在语言层面上就支持并发,相对于Java自己手动创建线程亦或是线程池,便捷的太多太多了。Goroutine是是一种比线程轻很多由Go自己管理不收OS调度的,类似coroutine,但又不是coroutine。写这篇文章仅是因为在做了几个goroutine的试验之后发现了其神奇之处,所以有时间的时候一定要去看看pproc.c这个文件是如何原创 2014-10-03 12:12:29 · 4045 阅读 · 0 评论 -
Condition variables in Golang difference between Signal and Broadcast
Golang 标准库中提供了sync.Mutex 用于多线程之间的同步。 同时也提供了条件变量配合Mutex结合使用。 条件变量主要的使用场景是: 当线程要执行A操作时,条件B未满足,而无法执行A操作,此时使当前线程进入睡眠状态(进入睡眠状态前会释放锁),等待条件B,当条件B出现时,发送通知唤醒因等待条件B而进入沉睡的线程。实例说明 一条专门用于读取文件A的线程T1, 一条专门用于写入原创 2015-10-23 15:58:13 · 888 阅读 · 0 评论 -
Go_默认路由源码分析
func main() { http.HandleFunc("/say",say()) err := http.ListenAndServe(":8080", nil) if err != nil { log.Fatal(err.Error()) }}func say(w http.ResponseWriter, r *http.Request) { //}上面是一段原创 2014-06-07 13:42:15 · 1210 阅读 · 0 评论 -
Go_os
这两天阅读了下Golang的标准包os的文档把里面的方法kan'le原创 2014-07-14 15:21:22 · 1001 阅读 · 0 评论 -
Go-Five things that make Go fast-学习笔记
Dave Cheney 写了yi原创 2014-06-09 00:59:28 · 1074 阅读 · 0 评论 -
Go-路由-静态资源的请求分发
针对于默认路由动态资源通过HandleFunc来注册静态资源通过Handle来注册源码如下// Handle registers the handler for the given pattern// in the DefaultServeMux.// The documentation for ServeMux explains how patterns are ma原创 2014-06-08 15:09:53 · 3114 阅读 · 0 评论 -
Go-单元测试
本文介绍如何编写测试用例原创 2014-06-11 00:22:48 · 675 阅读 · 0 评论 -
Go-类型断言
Java当中有instanceof这样的关键字判断类型 Go当中自然也有相应的方法来判断lei'xing原创 2014-06-11 14:30:33 · 7516 阅读 · 0 评论 -
Go-反射
反射是一门非常有用的技术原创 2014-06-11 19:39:27 · 900 阅读 · 0 评论 -
Go-BufferChannel-Select-基础理解
上一篇文章讲了 协程与管道http://blog.youkuaiyun.com/u012807459/article/details/27977771这篇主要讲S原创 2014-06-01 19:20:19 · 1449 阅读 · 0 评论 -
Golang-相对路径问题
首先因为之前上网看过几篇帖子原创 2014-06-17 22:25:40 · 9847 阅读 · 0 评论 -
Go-template-常用方法详解-注意事项
Gozhong'd注意事项下面这段代码的输出一定为空t := template.New("haha")t,err := t.ParseFiles("header.tmpl")fmt.Println(err)t.Execute(os.Stdout, nil)原因是为什么呢..... 首先先记住一个原则 template.New和ParseFiles(原创 2014-06-17 00:09:16 · 6410 阅读 · 2 评论 -
Golang-bytes包分析
根据 字符在在码表中的顺序从第一个字节进行比较如果第一个字节相同比较下一个直到出现两个在码表中顺序不同的两个字符如果这是a>b则返回1 b>a返回-1 如果每个字符比较到最后都是相等的name 返回1func Compare(a, b []byte) int 返回sep在s中重复出现的次数func Count(s, sep []byte) int返回b 是否包原创 2014-06-18 15:45:04 · 3363 阅读 · 0 评论 -
Go_log
晚上闲着看了眼log 为了学习记录一下shou'xian原创 2014-07-26 23:19:04 · 842 阅读 · 0 评论 -
Golang_tag
Golang tag也就是go语言中的注解原创 2014-08-29 11:08:18 · 1401 阅读 · 0 评论