| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- package internal
- import (
- "net"
- "one.com/nnet"
- )
- type TcpClient struct {
- *Hub
- addr string
- }
- func NewTcpClient(cf *nnet.HubConfig, cb nnet.ISessionCallback, p nnet.IProtocol) *TcpClient {
- return &TcpClient{
- Hub: newHub(cf, cb, p),
- }
- }
- func (self *TcpClient) Start() error {
- return nil
- }
- func (self *TcpClient) NewConnection(addr string, id uint64) error {
- tcpAddr, err := net.ResolveTCPAddr("tcp", addr)
- if err != nil {
- return err
- }
- conn, err := net.DialTCP("tcp", nil, tcpAddr)
- if err != nil {
- return err
- }
- self.wg.Add(1)
- go func() {
- ses := newSession(TcpConn{conn}, self)
- ses.UpdateId(id)
- ses.Do()
- self.wg.Done()
- }()
- return nil
- }
- func (self *TcpClient) DoJob(int) {
- }
- func (self *TcpClient) Stop() error {
- close(self.chQuit)
- self.wg.Wait()
- return nil
- }
|