Beispiel #1
0
//向客户端发包,存进一个消息队列,异步发送
func (c *ClientNode) SendMessage(message *rpc.Message) error {
	if c.quit {
		return fmt.Errorf("client is quit")
	}
	message.Dup()
	select {
	case c.Sendbuf <- message:
		return nil
	default:
		message.Free()
		return fmt.Errorf("send buffer full")
	}
}