connection.go
func (c *MConnection) sendSomeMsgPackets() bool {
	// Block until .sendMonitor says we can write.
	// Once we're ready we send more than we asked for,
	// but amortized it should even out.
	c.sendMonitor.Limit(maxMsgPacketTotalSize, atomic.LoadInt64(&c.config.SendRate), true)

	// Now send some msgPackets.
	for i := 0; i < numBatchMsgPackets; i++ {
		if c.sendMsgPacket() {
			return true
		}
	}
	return false
}
func (c *MConnection) sendSomeMsgPackets() bool {
	// Block until .sendMonitor says we can write.
	// Once we're ready we send more than we asked for,
	// but amortized it should even out.
	c.sendMonitor.Limit(maxMsgPacketTotalSize, atomic.LoadInt64(&c.config.SendRate), true)

	// Now send some msgPackets.
	for i := 0; i < numBatchMsgPackets; i++ {
		if c.sendMsgPacket() {
			return true
		}
	}
	return false
}
func ( c * MConnection ) sendSomeMsgPackets ( ) bool { // Block until .sendMonitor says we can write. // Once we're ready we send more than we asked for, // but amortized it should even out. c . sendMonitor . Limit ( maxMsgPacketTotalSize , atomic . LoadInt64 ( & c . config . SendRate ) , true ) // Now send some msgPackets. for i := 0 ; i < numBatchMsgPackets ; i ++ { if c . sendMsgPacket ( ) { return true } } return false }
// Returns true if messages from channels were exhausted.
// Blocks in accordance to .sendMonitor throttling.
Returns true if messages from channels were exhausted . Blocks in accordance to . sendMonitor throttling .