github.com/gogf/gf@v1.16.9/.example/net/gtcp/pkg_operations/gtcp_basic.go (about) 1 package main 2 3 import ( 4 "fmt" 5 "time" 6 7 "github.com/gogf/gf/net/gtcp" 8 "github.com/gogf/gf/os/glog" 9 "github.com/gogf/gf/util/gconv" 10 ) 11 12 func main() { 13 // Server 14 go gtcp.NewServer("127.0.0.1:8999", func(conn *gtcp.Conn) { 15 defer conn.Close() 16 for { 17 data, err := conn.RecvPkg() 18 if err != nil { 19 fmt.Println(err) 20 break 21 } 22 fmt.Println("receive:", data) 23 } 24 }).Run() 25 26 time.Sleep(time.Second) 27 28 // Client 29 conn, err := gtcp.NewConn("127.0.0.1:8999") 30 if err != nil { 31 panic(err) 32 } 33 defer conn.Close() 34 for i := 0; i < 10000; i++ { 35 if err := conn.SendPkg([]byte(gconv.String(i))); err != nil { 36 glog.Error(err.Error()) 37 } 38 time.Sleep(1 * time.Second) 39 } 40 }