修复第15章错别字 (#340)

This commit is contained in:
洪旭
2017-04-04 02:14:55 +08:00
committed by 无闻
parent 6d3f1902ba
commit 241af3ed40

View File

@@ -46,7 +46,7 @@ func doServerStuff(conn net.Conn) {
``` ```
我们在`main()`创建了一个`net.Listener`的变量他是一个服务器的基本函数用来监听和接收来自客户端的请求来自localhost即IP地址为127.0.0.1端口为50000基于TCP协议。这个`Listen()`函数可以返回一个`error`类型的错误变量。用一个无限for循环的`listener.Accept()`来等待客户端的请求。客户端的请求将产生一个`net.Conn`类型的连接变量。然后一个独立的程使用这个连接执行`doServerStuff()`开始使用一个512字节的缓冲`data`来读取客户端发送来的数据并且把它们打印到服务器的终端,`len`获取客户端发送的数据字节数;当客户端发送的所有数据都被读取完成时,程就结束了。这段程序会为每一个客户端连接创建一个独立的程。必须先运行服务器代码,再运行客户端代码。 我们在`main()`创建了一个`net.Listener`的变量他是一个服务器的基本函数用来监听和接收来自客户端的请求来自localhost即IP地址为127.0.0.1端口为50000基于TCP协议。这个`Listen()`函数可以返回一个`error`类型的错误变量。用一个无限for循环的`listener.Accept()`来等待客户端的请求。客户端的请求将产生一个`net.Conn`类型的连接变量。然后一个独立的程使用这个连接执行`doServerStuff()`开始使用一个512字节的缓冲`data`来读取客户端发送来的数据并且把它们打印到服务器的终端,`len`获取客户端发送的数据字节数;当客户端发送的所有数据都被读取完成时,程就结束了。这段程序会为每一个客户端连接创建一个独立的程。必须先运行服务器代码,再运行客户端代码。
客户端代码写在另外一个文件client.go中 客户端代码写在另外一个文件client.go中
@@ -297,7 +297,7 @@ func checkError(error error, info string) {
hostAndPort := fmt.Sprintf("%s:%s", flag.Arg(0), flag.Arg(1)) hostAndPort := fmt.Sprintf("%s:%s", flag.Arg(0), flag.Arg(1))
``` ```
*`initServer`函数中通过`net.ResolveTCPAddr`指定了服务器地址和端口,这个函数最终返回了一个`*net.TCPListener` *`initServer`函数中通过`net.ResolveTCPAddr`指定了服务器地址和端口,这个函数最终返回了一个`*net.TCPListener`
* 每一个连接都会以程的方式运行`connectionHandler`函数。这些开始于当通过`conn.RemoteAddr()`获取到客户端的地址 * 每一个连接都会以程的方式运行`connectionHandler`函数。这些开始于当通过`conn.RemoteAddr()`获取到客户端的地址
* 它使用`conn.Write`发送改进的go-message给客户端 * 它使用`conn.Write`发送改进的go-message给客户端
* 它使用一个25字节的缓冲读取客户端发送的数据并一一打印出来。如果读取的过程中出现错误代码会进入`switch`语句的`default`分支关闭连接。如果是操作系统的`EAGAIN`错误,它会重试。 * 它使用一个25字节的缓冲读取客户端发送的数据并一一打印出来。如果读取的过程中出现错误代码会进入`switch`语句的`default`分支关闭连接。如果是操作系统的`EAGAIN`错误,它会重试。
* 所有的错误检查都被重构在独立的函数'checkError'中,用来分发出现的上下文错误。 * 所有的错误检查都被重构在独立的函数'checkError'中,用来分发出现的上下文错误。