自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

李兵的专栏

长风破浪会有时,直挂云帆济沧海

  • 博客(7)
  • 收藏
  • 关注

原创 Common Tools

My EditorVimPYENVcurl -L https://raw.githubusercontent.com/pyenv/pyenv-installer/master/bin/pyenv-installer | bashMy Shellzshyum install zshOh-my-zshwget https://github.com/r

2015-11-21 17:32:10 1749

原创 reflect 库使用小结

Golang 通过 reflect 包向使用者提供了反射机制,能够很方便地获取到变量的运行时信息,但是其反射功能并没有JAVA类语言强大,它能够根据函数名字符串定位到函数,但是并不能根据类型字符串生成类型实例,因为GO是静态编译的,除非程序初始化时先生成所有所需类型的Type变量并记录下来。毕竟反射并不是编程语言必须的东西,个人觉得只有在写 IOC 类框架的时候会用的比较多。这里就这个包的使用进行各

2015-11-19 13:05:23 1038

原创 unsafe 库使用小结

unsafe 库让 golang 可以像 C 语言一样操作计算机内存,但这并不是 golang 推荐使用的,能不用尽量不用,就像它的名字所表达的一样,它绕过了golang的内存安全原则,是不安全的,容易使你的程序出现莫名其妙的问题,不利于程序的扩展与维护。

2015-11-18 15:29:11 5471 1

原创 sync/atomic 库使用小结

sync/atomic 库提供了原子操作的支持,原子操作直接有底层CPU硬件支持,因而一般要比基于操作系统API的锁方式效率高些。本文对 sync/atomic 中的基本操作进行一个简单的介绍。原子增值CAS原子导出值原子导入值原子交换值

2015-11-18 12:51:26 14187 2

原创 Golang 闭包

很多编程语言都闭包的概念,最常见闭包使用的应该是 javascript 了。其实闭包不是什么新奇的概念,就是函数与函数特定环境的组合,闭包使用了本函数之外定义的变量。Golang 中也有所谓的闭包,本文对Golang中的闭包的概念通过实际示例进行个简单的说明。

2015-11-17 16:37:51 5015 3

原创 GO 利用 sync 库实现 Barrier

Barrier 用于多个线程完成状态的同步。在linux的系统库中有相关的实现,在import ( "sync" "time")type Barrier struct { curCnt int maxCnt int cond *sync.Cond}func NewBarrier(maxCnt int) *Barrier { mutex := n

2015-11-16 15:54:40 1413

原创 Go 语言 make & new

make 与 new 都是 Go 语言分配变量内存的方式,其中 make 主要针对 slice、map 与 chan 变量类型的内存分配以及相应内部结构的初始化,而 new 可以申请任何类型变量内存,但是拿到内存后会赋零值。

2015-11-05 23:46:36 1161

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除