songleo 10 年之前
父节点
当前提交
2df6179a14
共有 2 个文件被更改,包括 4 次插入4 次删除
  1. 2 2
      eBook/14.1.md
  2. 2 2
      eBook/14.2.md

+ 2 - 2
eBook/14.1.md

@@ -125,7 +125,7 @@ At the end of main() // after 10s
 
 当 `main()` 函数返回的时候,程序退出:它不会等待任何其他非 main 协程的结束。这就是为什么在服务器程序中,每一个请求都会启动一个协程来处理,`server()` 函数必须保持运行状态。通常使用一个无限循环来达到这样的目的。
 
-另外,协程是独立的处理单元,一旦陆续启动一些协程,你无法确定他们是什么时候真正开始执行的。你的代码罗技必须具独立于协程调用的顺序。
+另外,协程是独立的处理单元,一旦陆续启动一些协程,你无法确定他们是什么时候真正开始执行的。你的代码逻辑必须独立于协程调用的顺序。
 
 为了对比使用一个线程,连续调用的情况,移除 go 关键字,重新运行程序。
 
@@ -149,7 +149,7 @@ At the end of main() // after 17 s
 
 (译者注:标题中的“Go协程(goroutines)” 即是 14 章讲的协程指的是 Go 语言中的协程。而“协程(coroutines)”指的是其他语言中的协程概念,仅在本节出现。)
 
-在其他语言中,比如 C#,Lua 或者 Python 都有协程的概念。这个名字表明它和 G o协程有些相似,不过有两点不同:
+在其他语言中,比如 C#,Lua 或者 Python 都有协程的概念。这个名字表明它和 Go协程有些相似,不过有两点不同:
 
 - Go 协程意味着并行(或者可以以并行的方式部署),协程一般来说不是这样的
 - Go 协程通过通道来通信;协程通过让出和恢复操作来通信

+ 2 - 2
eBook/14.2.md

@@ -16,7 +16,7 @@
 
 未初始化的通道的值是nil。
 
-所以通道稚嫩传输一种类型的数据,比如 `chan int` 或者 `chan string`,所有的类型都可以用于通道,空接口 `interface{}` 也可以。甚至可以(有时非常有用)创建通道的通道。
+所以通道只能传输一种类型的数据,比如 `chan int` 或者 `chan string`,所有的类型都可以用于通道,空接口 `interface{}` 也可以。甚至可以(有时非常有用)创建通道的通道。
 
 通道实际上是类型化消息的队列:使数据得以传输。它是先进先出(FIFO)结构的所以可以保证发送给他们的元素的顺序(有些人知道,通道可以比作 Unix shells 中的双向管道(tw-way pipe))。通道也是引用类型,所以我们使用 `make()` 函数来给它分配内存。这里先声明了一个字符串通道 ch1,然后创建了它(实例化):
 
@@ -39,7 +39,7 @@ ch1 = make(chan string)
 
 流向通道(发送)
 
-`ch <- int1` 表示:用通道 ch 发送变量 int1(二进制操作符,中缀 = 发送)
+`ch <- int1` 表示:用通道 ch 发送变量 int1(双目运算符,中缀 = 发送)
 
 从通道流出(接收),三种方式: