如何判断tcplistener是否已关闭?

时间:2016-01-19 11:41:14

标签: go

在Golang,我可以observable.addCallback(event-> outer.doSth(event)); 一个close但是,我无法判断TCPListener是否已关闭。此信息可用于在程序中执行其他逻辑。

1 个答案:

答案 0 :(得分:0)

您可以在使用之前拨打套接字:

_, err = net.Dial("tcp", "127.0.0.1:8021")    //8021 is a closed socket
if err != nil {
    panic("Error, socket not opened")
}

修改 也许这种方式更清晰:

isOpen := true
_, err = net.Dial("tcp", "127.0.0.1:8021")    //8021 is a closed socket
if err != nil {
    isOpen = false
}

if isOpen {
    //Your logic here
}