func (c *conn) send(upd *update) error {
	c.sendingMut.Lock()
	defer c.sendingMut.Unlock()
	//send (transports responsiblity to enforce timeouts)
	return c.transport.send(upd)
}
func (c *conn) send(upd *update) error {
	c.sendingMut.Lock()
	defer c.sendingMut.Unlock()
	//send (transports responsiblity to enforce timeouts)
	return c.transport.send(upd)
}
func ( c * conn ) send ( upd * update ) error { c . sendingMut . Lock ( ) defer c . sendingMut . Unlock ( ) //send (transports responsiblity to enforce timeouts) return c . transport . send ( upd ) }
//send to connection, ensure only 1 concurrent sender
send to connection ensure only 1 concurrent sender