Merge pull request #188 from syhou/master

使用更清晰的语句描述“控制TCP连接”一节
This commit is contained in:
astaxie
2013-04-28 00:59:22 -07:00

View File

@@ -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) 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