使用方式

    其中,GetServer使用单例模式通过给定一个唯一的名称获取/创建一个单例Server,后续可通过SetAddress和方法动态修改Server属性;NewServer则直接根据给定参数创建一个Server对象,并可指定名称。

    在这个示例中我们使用了Send和来发送和接收数据。其中Recv方法会通过阻塞方式接收数据,直到客户端”发送完毕一条数据”(执行一次Send,底层Socket通信不带缓冲实现),或者关闭链接。关于其中的链接对象gtcp.Conn的介绍,请继续阅读后续章节。

    每一个客户端发起的TCP链接,TCPServer都会创建一个进行处理,直至TCP链接断开。由于goroutine比较轻量级,因此可以支撑很高的并发量。