作者热门文章
- xml - AJAX/Jquery XML 解析
- 具有多重继承的 XML 模式
- .net - 枚举序列化 Json 与 XML
- XML 简单类型、简单内容、复杂类型、复杂内容
我正在开发一个 P2P 应用程序,并希望节点同时充当客户端和服务器。比如我建立了一个监听节点,在goroutine中运行如下代码:
ln, _ := net.Listen("tcp", ":8080")
for {
conn, err := ln.Accept()
.....
}
然后,在另一个 goroutine 中,逻辑确定它必须联系另一个节点以让它知道它的存在,比如在本地主机地址“:8081”上,它也有一个类似的监听循环正在运行。
如果我只使用 net.Dial("tcp", ":8081")
,它将选择一个随机端口号进行连接,并且节点位于 8081
将尝试联系该端口而不是 8080
上的正确端口。有没有办法从 8080
发起 net.Dial
调用?是否允许这样的事情,或者听众是否会感到困惑并拦截用于 net.Dial
返回的套接字的通信?
最佳答案
如果你想在拨出时控制本地端口,你可以使用net.DialTCP
关于sockets - 从正在收听的相同端口调用地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46332498/
我是一名优秀的程序员,十分优秀!