Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sockets 通过TCP处理多个客户端_Sockets_Go - Fatal编程技术网

Sockets 通过TCP处理多个客户端

Sockets 通过TCP处理多个客户端,sockets,go,Sockets,Go,好的,我刚开始学习golang,到目前为止我很喜欢它。然而,我发现他们的文档对于围棋初学者来说并不好,这是我的问题。 我想写一个小的服务器程序,它接受连接并向客户机写入一些东西。到目前为止,这样做没有问题 然而,一旦这个东西有了真正的功能,我就需要能够处理多个客户端,我认为这对于goroutines来说也是一个很好的练习 listener, error := net.Listen("tcp", remote) con, error := listener.Accept() go handleCl

好的,我刚开始学习golang,到目前为止我很喜欢它。然而,我发现他们的文档对于围棋初学者来说并不好,这是我的问题。 我想写一个小的服务器程序,它接受连接并向客户机写入一些东西。到目前为止,这样做没有问题

然而,一旦这个东西有了真正的功能,我就需要能够处理多个客户端,我认为这对于goroutines来说也是一个很好的练习

listener, error := net.Listen("tcp", remote)
con, error := listener.Accept()
go handleClient(&con);
func handleClient(con *net.Conn) {
我删掉了大部分代码。问题是,无论我尝试什么,我都无法通过
con

con.RemoteAddr undefined (type *net.Conn has no field or method RemoteAddr)
(在本例中发现:)。 所以我试着看了一下文档,但它只给了我net包的源代码。 通过源代码读取,并计算出它应该是

undefined: TCPConn
如何将一个客户端的连接传递到一个goroutine,以便一次处理多个客户端?

好的,我明白了。 有个家伙已经写了我想在围棋里写的东西。


我们应该使用con*net.Conn还是con-net.Cnnn?
go handleClient(con);
func handleClient(con net.Conn) {