func (c *OneClientPool) Auth(auth string) {
	c.auth = auth
	for _, v := range c.oneclients {
		v.Auth(auth)
	}
}
Auth sets s token for Authentication.
package client
import (
	"sync/atomic"
	"github.com/kudoochui/kudos/rpcx/protocol"
)
type OneClientPool struct {
	count      uint64
	index      uint64
	oneclients []*OneClient
	auth       string
	failMode          FailMode
	selectMode        SelectMode
	discovery         ServiceDiscovery
	option            Option
	serverMessageChan chan<- *protocol.Message
}
func NewOneClientPool(count int, failMode FailMode, selectMode SelectMode, discovery ServiceDiscovery, option Option) *OneClientPool {
	pool := &OneClientPool{
		count:      uint64(count),
		oneclients: make([]*OneClient, count),
		failMode:   failMode,
		selectMode: selectMode,
		discovery:  discovery,
		option:     option,
	}
	for i := 0; i < count; i++ {
		oneclient := NewOneClient(failMode, selectMode, discovery, option)
		pool.oneclients[i] = oneclient
	}
	return pool
}
func NewBidirectionalOneClientPool(count int, failMode FailMode, selectMode SelectMode, discovery ServiceDiscovery, option Option, serverMessageChan chan<- *protocol.Message) *OneClientPool {
	pool := &OneClientPool{
		count:             uint64(count),
		oneclients:        make([]*OneClient, count),
		failMode:          failMode,
		selectMode:        selectMode,
		discovery:         discovery,
		option:            option,
		serverMessageChan: serverMessageChan,
	}
	for i := 0; i < count; i++ {
		oneclient := NewBidirectionalOneClient(failMode, selectMode, discovery, option, serverMessageChan)
		pool.oneclients[i] = oneclient
	}
	return pool
}