1、并发并不是并行,前者是优先对时间片的抢占,后者是真多核。 
go中多线程时直接要求并行的方法是:

亦不可滥用,CPU密集型,并发度很高的场景适用。 
2、go起的协程 
3、 
function that returns a chanel 
fan-in 二次缓冲 
send a chanel on a chanel 利用chanel饥饿阻塞原理实现有序 
select 利用select的ok随机执行性,可以少起一些Goroutine 
select+time.After 可以做些限时事物 
select+chanel 利用chanel的饥饿原理,把它当做了信号量来用,这个信号量还可以有具体含义,比如错误信息