func (m *sharedMap) getShard(seqID int32) *shared {
	return m.shared[seqID%m.size]
}
getShard returns shard under given seq id
package netpollmux
import (
	"sync"
	"github.com/cloudwego/kitex/pkg/remote"
)
type EventHandler interface {
	Recv(bufReader remote.ByteBuffer, err error) error
}
type sharedMap struct {
	size   int32
	shared []*shared
}
type shared struct {
	msgs map[int32]EventHandler
	sync.Mutex
}
func newSharedMap(size int32) *sharedMap {
	m := &sharedMap{
		size:   size,
		shared: make([]*shared, size),
	}
	for i := range m.shared {
		m.shared[i] = &shared{
			msgs: make(map[int32]EventHandler),
		}
	}
	return m
}