摘要: Go语言中os包提供了一些环境变量的操作封装。包括:设置环境变量:Setenv获取环境变量:Getenv删除指定的环境变量:Unsetenv获取所有环境变量:Environ清除所有环境变量:Clearenv请看示例代码:package main import "os"import "fmt" fun... 阅读全文
posted @ 2015-06-01 21:42 klain 阅读(3151) 评论(0) 推荐(0) 编辑
摘要: go语言提供的flag包可以解析命令行的参数,代码:package main import ("flag""fmt") func main() {//第一个参数,为参数名称,第二个参数为默认值,第三个参数是说明username := flag.String("name", "", "Input yo... 阅读全文
posted @ 2015-06-01 21:40 klain 阅读(4060) 评论(0) 推荐(0) 编辑
摘要: 欢迎关注go语言微信公众号 每日go语言 golang_everydaysync.once可以控制函数只能被调用一次。不能多次重复调用。示例代码:package mainimport ( "fmt" "sync" "time")func main() { o := &sync.Once{} go d... 阅读全文
posted @ 2015-05-18 21:13 klain 阅读(9904) 评论(0) 推荐(1) 编辑
摘要: go语言目前已可以用来开发android和ios手机app。相关资料:1、IOShttps://groups.google.com/forum/?utm_medium=email&utm_source=footer#!topic/golang-china/zEh_pdSLHDs需要能访问google... 阅读全文
posted @ 2015-05-18 21:09 klain 阅读(6436) 评论(0) 推荐(1) 编辑
摘要: 欢迎关注go语言微信公众号 每日go语言 golang_everydaygo中map用于存储健值对。map格式:map[KeyType]ValueType声明一个map,键为字符型,值为int型:m := make(map[string]int)map中添加值:m["a"] = 1获取map中值:f... 阅读全文
posted @ 2015-05-18 21:03 klain 阅读(6783) 评论(0) 推荐(1) 编辑
摘要: untime.Gosched()用于让出CPU时间片。这就像跑接力赛,A跑了一会碰到代码runtime.Gosched()就把接力棒交给B了,A歇着了,B继续跑。看代码:package main import ("fmt""runtime") func say(s string) {for i :=... 阅读全文
posted @ 2015-05-02 21:28 klain 阅读(9904) 评论(1) 推荐(1) 编辑
摘要: 读写锁是针对于读写操作的互斥锁。基本遵循两大原则:1、可以随便读。多个goroutin同时读。2、写的时候,啥都不能干。不能读,也不能写。解释:在32位的操作系统中,针对int64类型值的读操作和写操作不可能只由一个CPU指令完成。如果一个写的操作刚执行完了第一个指令,时间片换给另一个读的协程,这就... 阅读全文
posted @ 2015-05-02 21:26 klain 阅读(3083) 评论(0) 推荐(1) 编辑
摘要: go mutex是互斥锁,只有Lock和Unlock两个方法,在这两个方法之间的代码不能被多个goroutins同时调用到。看代码:package main import ("fmt""sync""time") var m *sync.Mutex func main() {m = new(sync.... 阅读全文
posted @ 2015-05-02 21:24 klain 阅读(922) 评论(0) 推荐(1) 编辑
摘要: go中import用于导入包。导入之后就可以使用包中的代码。比如:import("fmt")在代码中就可以使用fmt包中的方法,如:fmt.Println("hello world")1、使用点操作引入包时,可以省略包前缀:import(. "fmt")注意上面 fmt前多了 . 字符。代码中使用时... 阅读全文
posted @ 2015-04-20 07:45 klain 阅读(3190) 评论(0) 推荐(1) 编辑
摘要: 在java等代码中,我们查询数据库的操作:sql = "select * from ....";result = db.query(sql)for(item in result){.....}但是在go语言中,这么做就有些土了,我们可以利用channel天生的队列和线程同步的特性来实现。这也是go和... 阅读全文
posted @ 2015-04-20 07:44 klain 阅读(484) 评论(0) 推荐(1) 编辑