From a9745cd4a8315246c79f8a3ad7c99e141a1a1a3c Mon Sep 17 00:00:00 2001 From: Reckhou Date: Sun, 28 Apr 2013 15:23:02 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BD=BF=E7=94=A8=E6=9B=B4=E6=B8=85=E6=99=B0?= =?UTF-8?q?=E7=9A=84=E8=AF=AD=E5=8F=A5=E6=8F=8F=E8=BF=B0=E2=80=9C=E6=8E=A7?= =?UTF-8?q?=E5=88=B6TCP=E8=BF=9E=E6=8E=A5=E2=80=9D=E4=B8=80=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