From 86a6bfb882b4ed2249a5bd44e9b9b6c8fdb83f64 Mon Sep 17 00:00:00 2001 From: Reckhou Date: Sun, 28 Apr 2013 15:23:02 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BD=BF=E7=94=A8=E6=9B=B4=E6=B8=85?= =?UTF-8?q?=E6=99=B0=E7=9A=84=E8=AF=AD=E5=8F=A5=E6=8F=8F=E8=BF=B0=E2=80=9C?= =?UTF-8?q?=E6=8E=A7=E5=88=B6TCP=E8=BF=9E=E6=8E=A5=E2=80=9D=E4=B8=80?= =?UTF-8?q?=E8=8A=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ebook/08.1.md | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/ebook/08.1.md b/ebook/08.1.md index cd0c9577..fce83212 100644 --- a/ebook/08.1.md +++ b/ebook/08.1.md @@ -229,13 +229,18 @@ Go语言中通过net包中的`DialTCP`函数来建立一个TCP连接,并返回 ### 控制TCP连接 TCP有很多连接控制函数,我们平常用到比较多的有如下几个函数: - #func (c *TCPConn) SetTimeout(nsec int64) os.Error func DialTimeout(net, addr string, timeout time.Duration) (Conn, error) - func (c *TCPConn) SetKeepAlive(keepalive bool) os.Error -第一个函数用来设置连接的超时时间,客户端和服务器端都适用,当超过设置的时间时该连接就会失效。 +设置建立连接的超时时间,客户端和服务器端都适用,当超过设置时间时,连接自动关闭。 -第二个函数用来设置客户端是否和服务器端一直保持着连接,即使没有任何的数据发送。 + func (c *TCPConn) SetReadDeadline(t time.Time) error + func (c *TCPConn) SetWriteDeadline(t time.Time) error + +用来设置写入/读取一个连接的超时时间。当超过设置时间时,连接自动关闭。 + + func (c *TCPConn) SetKeepAlive(keepalive bool) os.Error + +设置客户端是否和服务器端保持长连接,可以降低建立TCP连接时的握手开销,对于一些需要频繁交换数据的应用场景比较适用。 更多的内容请查看`net`包的文档。 ## UDP Socket From 2faab375d5763d3f0da1750d02bf67037ef374cd Mon Sep 17 00:00:00 2001 From: Reckhou Date: Sun, 28 Apr 2013 15:26:07 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E4=BB=A3=E7=A0=81?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ebook/08.1.md | 1 + 1 file changed, 1 insertion(+) diff --git a/ebook/08.1.md b/ebook/08.1.md index fce83212..7b3e5293 100644 --- a/ebook/08.1.md +++ b/ebook/08.1.md @@ -234,6 +234,7 @@ TCP有很多连接控制函数,我们平常用到比较多的有如下几个 设置建立连接的超时时间,客户端和服务器端都适用,当超过设置时间时,连接自动关闭。 func (c *TCPConn) SetReadDeadline(t time.Time) error + func (c *TCPConn) SetWriteDeadline(t time.Time) error 用来设置写入/读取一个连接的超时时间。当超过设置时间时,连接自动关闭。 From 1d7f8bd4a1da4ca659ed157a2902b3cb0abf217d Mon Sep 17 00:00:00 2001 From: Reckhou Date: Sun, 28 Apr 2013 15:31:37 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E4=BF=AE=E6=AD=A3=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ebook/08.1.md | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/ebook/08.1.md b/ebook/08.1.md index 7b3e5293..740ffe6d 100644 --- a/ebook/08.1.md +++ b/ebook/08.1.md @@ -233,13 +233,12 @@ TCP有很多连接控制函数,我们平常用到比较多的有如下几个 设置建立连接的超时时间,客户端和服务器端都适用,当超过设置时间时,连接自动关闭。 - func (c *TCPConn) SetReadDeadline(t time.Time) error - - func (c *TCPConn) SetWriteDeadline(t time.Time) error + func (c *TCPConn) SetReadDeadline(t time.Time) error + func (c *TCPConn) SetWriteDeadline(t time.Time) error 用来设置写入/读取一个连接的超时时间。当超过设置时间时,连接自动关闭。 - func (c *TCPConn) SetKeepAlive(keepalive bool) os.Error + func (c *TCPConn) SetKeepAlive(keepalive bool) os.Error 设置客户端是否和服务器端保持长连接,可以降低建立TCP连接时的握手开销,对于一些需要频繁交换数据的应用场景比较适用。