func (sa *ServiceAdmin) Listen(addr *skynet.BindAddr, bindWait *sync.WaitGroup) { listener, err := addr.Listen() if err != nil { panic(err) } bindWait.Done() sa.service.Log.Trace(fmt.Sprintf("%+v", AdminListening{sa.service.Config})) for { conn, err := listener.AcceptTCP() if err != nil { panic(err) } go sa.rpc.ServeCodec(bsonrpc.NewServerCodec(conn)) } }
func (s *Service) listen(addr *skynet.BindAddr, bindWait *sync.WaitGroup) { var err error s.rpcListener, err = addr.Listen() if err != nil { panic(err) } s.Log.Trace(fmt.Sprintf("%+v", ServiceListening{ Addr: addr, ServiceConfig: s.Config, })) bindWait.Done() for { conn, err := s.rpcListener.AcceptTCP() if err != nil { panic(err) } s.connectionChan <- conn } }