myconn.SetReadBuffer(1)
最關鍵的部分是設置緩沖區只有1字節
再用
myconn.Read 讀取
這樣 當緩沖區有1字節的數據 read就能響應了,而不至於等到默認的8字節時 才能讀取、、
func testTcp() { var( lists []*net.TCPConn myconn *net.TCPConn err error ) service := ":2000" //設置服務器監聽的端口 tcpAddr, _ := net.ResolveTCPAddr("tcp", service) //創建 tcpAddr數據 fmt.Println("tcpAddr ") mylistener, _ := net.ListenTCP("tcp", tcpAddr) for { myconn, err = mylistener.AcceptTCP() fmt.Println(err) myconn.SetReadBuffer(1) lists = append(lists,myconn) } }
參考
https://golang.hotexamples.com/zh/examples/net/TCPConn/SetReadBuffer/golang-tcpconn-setreadbuffer-method-examples.html
