我是golang的新手,我正在通过TCP协议编写客户端 - 服务器应用程序。我需要建立一个临时连接,几秒钟后关闭。我不明白该怎么做。
我有这样的功能,它创造了采空区数据的连接,并等待:设置Golang的连接时间
func net_AcceptAppsList(timesleep time.Duration) {
ln, err := net.Listen("tcp", ":"+conf.PORT)
CheckError(err)
conn, err := ln.Accept()
CheckError(err)
dec := gob.NewDecoder(conn)
pack := map[string]string{}
err = dec.Decode(&pack)
fmt.Println("Message:", pack)
conn.Close()
}
我需要这个功能,等待数据仅几秒钟 - 不是永远。
不,这不是我想要的。当我看到这个函数时,如果这些函数是我想要的,我永远不会问这个问题。这个函数只是设置读或写操作的超时时间!但是如果没有它,那么什么都不会发生。 –
@IgniSerpens:那么请举例说明你需要什么。 'Decode'调用将在连接上执行'Read',所以这将导致'Decode'在截止时间到期后返回。 – JimB
我们需要对现有的连接本身进行超时。 –