code: func (c *conn) flush(n int) {
  	if len(c.buf) == 0 {
  		return
  	}
  	if n == 0 {
  		n = len(c.buf)
  	}
  
  	// Trim the last \n, StatsD does not like it.
  	_, err := c.w.Write(c.buf[:n-1])
  	c.handleError(err)
  	if n < len(c.buf) {
  		copy(c.buf, c.buf[n:])
  	}
  	c.buf = c.buf[:len(c.buf)-n]
  }
docs: // flush flushes the first n bytes of the buffer.
  // If n is 0, the whole buffer is flushed.