我写这在Windows和测试运行远程端口是否激活一个简单的围棋程序:“ConnectEx tcp:信号量超时期限已过期”是什么意思?
package main
import (
"fmt"
"net"
)
func main(){
conn, err := net.Dial("tcp", "192.168.23.191:3403")
if err != nil {
fmt.Println(err)
} else {
conn.Close()
}
}
现在,远程端口关闭。我运行它第一次,错误的是:
dial tcp 192.168.23.191:3403: ConnectEx tcp: The remote computer refused the network connection.
然后我继续运行,错误被更改为:
dial tcp 192.168.23.191:3403: ConnectEx tcp: The semaphore timeout period has expired.
为什么拨号回报“ConnectEx TCP:信号灯超时时间已过期。”?这个错误的含义是什么?
为什么超时返回“信号量超时期限已过期”?我想形成你的解释,错误应该是“连接超时”,信号量是指什么? –
[** semaphore **](http://en.wikipedia.org/wiki/Semaphore_%28programming%29)_在计算机科学中,特别是在操作系统中,信号量是一种变量或抽象数据类型,用于控制通过多个进程访问并行编程或多用户环境中的公共资源._听起来或许更进一步,下游有一个信号量用于控制网络上的并发访问,例如'net.Dial()',一个信号量总是实现一个超时。 – Vector