Skip to content

Instantly share code, notes, and snippets.

@filinvadim
Created March 13, 2018 15:13
Show Gist options
  • Save filinvadim/9621e0e63fdac7491213aae635d70a5f to your computer and use it in GitHub Desktop.
Save filinvadim/9621e0e63fdac7491213aae635d70a5f to your computer and use it in GitHub Desktop.
Reading very long data from socket
func (c *IPCSocket) Listen() {
buffer := bytes.Buffer{}
for {
reader := bufio.NewReader(c.Connect)
line, prefix, err := reader.ReadLine()
if err != nil {
fmt.Printf("error: can't read form socket:", err)
log.Fatal(err)
}
buffer.Write(line)
if !prefix {
break
}
}
if len(buffer.Bytes()) != 0 {
c.Response = buffer.Bytes()
fmt.Println("Client got:", buffer.String())
return
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment