首页 > 其他 > 详细

golang goroutine channel [fmt.Println=>String]

时间:2015-03-04 14:32:23      阅读:318      评论:0      收藏:0      [点我收藏+]

初识golang,这部分也不是很了解,百度了一下,做个小记录

goroutine是golang用来做并发处理的,使用起来很简单  go func(){...}(),就是看起来随便用一般而容易go的滥用,所以使用时要仔细斟酌才好。

 

channel 大约是用来在线程间传递数据的,主线程开通一个channel,goroutine往channel中存入内容

1.channel只能用make创建

c := make(chan int)

2.channel中存入数据

c<-2  //把2存入到channel中

3.获取channel中数据

<-c

无buffer的channel  c:=make(chan int)  或  c:=make(chan int,0) 先取内容后放入数据(也就是先执行的地方使用<-c,后面在使用c<-2)

有buffer的channel  c:=make(chan int,10) 先放入数据后取内容(也就是先执行的地方使用c<-2,然后在使用<-c)

 

使用fmt.Println()时,如果当前结构中有定义String()方法时,会默认调用此方法返回值用于输出

golang goroutine channel [fmt.Println=>String]

原文:http://www.cnblogs.com/benlightning/p/4313171.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!