| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- package internal
- import (
- "net"
- "one.com/nnet"
- )
- type TcpClient struct {
- *Hub
- addr string
- }
- func NewTcpClient(cf *nnet.HubConfig, cb nnet.ISessionCallback, p nnet.IProtocol, addr string) *TcpClient {
- return &TcpClient{
- Hub: newHub(cf, cb, p),
- addr: addr,
- }
- }
- func (self *TcpClient) Start() error {
- tcpAddr, err := net.ResolveTCPAddr("tcp", self.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.Do()
- self.wg.Done()
- }()
- return nil
- }
- func (self *TcpClient) DoJob(int) {
- }
- func (self *TcpClient) Stop() error {
- close(self.chQuit)
- self.wg.Wait()
- return nil
- }
|