由于目前golang 没有提供泛型机制,所以通用容器实现基本和 c 类似,golang 用 interface{} 做转接, c 用 void * 转接。 ring 包实现循环双向链表: type?Ring?struct???{????
???next,?prev?*Ri...
分类:
其他好文 时间:
2015-03-18 16:10:33
阅读次数:
136
Redis和NSQ都有完善的订阅和发布实现,但参考它们的源码实现,做个实际例子,对两边的异同和这种机制会更有印象。
练习实现简单的 订阅/取消订阅/发布信息 功能,足够了。
Server.go
Server结构中的Dict用map保存了Channel的相关信息,而Channel结构中则用一个map保存了订阅这个Channel的Client.
这个与Redis中不...
分类:
其他好文 时间:
2015-03-17 23:36:08
阅读次数:
220
pprof是个神马玩意儿?pprof - manual page for pprof (part of gperftools)是gperftools工具的一部分gperftools又是啥?These tools are for use by developers so that they can c...
分类:
Web程序 时间:
2015-03-17 20:11:13
阅读次数:
189
13年上半年接触了Golang,对Golang十分喜爱。现在是2015年,离春节还有几天,从开始学习到现在的一年半时间里,前前后后也用Golang写了些代码,其中包括业余时间的,也有产品项目中的。一直有想法写点Golang相关的总结或者感想,决定还是在年前总结下吧。注明下:我只是Golang的喜好者,不是脑残粉,也无意去挑起什么语言之争。
特性少,语法简单。GO是崇尚极简主义的,提倡少即是多...
分类:
其他好文 时间:
2015-03-17 18:05:49
阅读次数:
178
1.读取目录list, err := ioutil.ReadDir("DIR")//要读取的目录地址DIR,得到列表if err != nil { fmt.Println("read dir error") return}for _, info := range list { //遍历目...
分类:
其他好文 时间:
2015-03-17 11:54:21
阅读次数:
180
Golang :不要通过共享内存来通信,而应该通过通信来共享内存。这句风靡在Go社区的话,说的就是 goroutine中的 channel .......
他在go并发编程中充当着 类型安全的管道作用。...
分类:
编程语言 时间:
2015-03-16 19:25:51
阅读次数:
260
structstring{
byte*str;
intgolen;
}
分类:
其他好文 时间:
2015-03-16 06:25:38
阅读次数:
179