From 8e7e814cc6be6925c9006302f7394dd4cda12be2 Mon Sep 17 00:00:00 2001 From: xinwendashibaike Date: Fri, 16 Jan 2015 15:56:16 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=A1=A8=E8=BE=BE=E4=B8=8D?= =?UTF-8?q?=E9=80=9A=E9=A1=BA=E7=9A=84=E8=AF=AD=E5=8F=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- zh/02.7.md | 2 ++ zh/05.1.md | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/zh/02.7.md b/zh/02.7.md index 36c59c24..9f4657b7 100644 --- a/zh/02.7.md +++ b/zh/02.7.md @@ -110,6 +110,8 @@ channel通过操作符`<-`来接收和发送数据 fmt.Println(<-c) fmt.Println(<-c) } + //修改为1报如下的错误: + //fatal error: all goroutines are asleep - deadlock! ## Range和Close 上面这个例子中,我们需要读取两次c,这样不是很方便,Go考虑到了这一点,所以也可以通过range,像操作slice或者map一样操作缓存类型的channel,请看下面的例子 diff --git a/zh/05.1.md b/zh/05.1.md index 2a87bd99..7c7d206f 100644 --- a/zh/05.1.md +++ b/zh/05.1.md @@ -1,5 +1,5 @@ # 5.1 database/sql接口 -Go与PHP不同的地方是Go没有官方提供数据库驱动,而是为开发者开发数据库驱动定义了一些标准接口,开发者可以根据定义的接口来开发相应的数据库驱动,这样做有一个好处,只要按照标准接口开发的代码, 以后需要迁移数据库时,不需要任何修改。那么Go都定义了哪些标准接口呢?让我们来详细的分析一下 +Go与PHP不同的地方是Go官方没有提供数据库驱动,而是为开发数据库驱动定义了一些标准接口,开发者可以根据定义的接口来开发相应的数据库驱动,这样做有一个好处,只要是按照标准接口开发的代码, 以后需要迁移数据库时,不需要任何修改。那么Go都定义了哪些标准接口呢?让我们来详细的分析一下 ## sql.Register 这个存在于database/sql的函数是用来注册数据库驱动的,当第三方开发者开发数据库驱动时,都会实现init函数,在init里面会调用这个`Register(name string, driver driver.Driver)`完成本驱动的注册。