From 865fb2d64e4e4c252d7b457b502695de83f84a1d Mon Sep 17 00:00:00 2001 From: Soulless Date: Sat, 3 Aug 2019 05:13:37 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=BF=E8=AF=AD=E5=8F=A5=E9=80=9A=E9=A1=BA?= =?UTF-8?q?=E4=BA=9B=EF=BC=8C=E6=9B=B4=E5=AE=B9=E6=98=93=E8=AF=BB=E6=87=82?= =?UTF-8?q?=20(#703)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * 使语句通顺些,更容易读懂 * Update 14.2.md --- eBook/14.2.md | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/eBook/14.2.md b/eBook/14.2.md index a8ea493..747c508 100644 --- a/eBook/14.2.md +++ b/eBook/14.2.md @@ -114,7 +114,7 @@ Washington Tripoli London Beijing tokyo ---- Error run E:/Go/Goboek/code examples/chapter 14/goroutine2.exe with code Crashed ---- Program exited with code -2147483645: panic: all goroutines are asleep-deadlock! ``` -为什么会这样?运行时会检查所有的协程(也许只有一个是这种情况)是否在等待(可以读取或者写入某个通道),意味着程序无法处理。这是死锁(deadlock)形式,运行时可以检测到这种情况。 +为什么会这样?运行时(runtime)会检查所有的协程(像本例中只有一个)是否在等待着什么东西(可从某个通道读取或者写入某个通道),这意味着程序将无法继续执行。这是死锁(deadlock)的一种形式,而运行时(runtime)可以为我们检测到这种情况。 注意:不要使用打印状态来表明通道的发送和接收顺序:由于打印状态和通道实际发生读写的时间延迟会导致和真实发生的顺序不同。 @@ -169,7 +169,6 @@ func suck(ch chan int) { } } ``` - 在 `main()` 中使用协程开始它: ```go