码迷,mamicode.com
首页 > 其他好文 > 详细

golang goroutine channel [fmt.Println=>String]

时间:2015-03-04 14:32:48      阅读:163      评论: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
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!