func (c *Connection) withStateRLock(f func() error) error {
	c.stateMut.RLock()
	err := f()
	c.stateMut.RUnlock()

	return err
}
func (c *Connection) withStateRLock(f func() error) error {
	c.stateMut.RLock()
	err := f()
	c.stateMut.RUnlock()

	return err
}
func ( c * Connection ) withStateRLock ( f func ( ) error ) error { c . stateMut . RLock ( ) err := f ( ) c . stateMut . RUnlock ( ) return err }
// withStateRLock performs an action with the connection state mutex rlocked.
withStateRLock performs an action with the connection state mutex rlocked .