mirror of https://gitee.com/topnuomi/goweb
29 lines
398 B
Go
29 lines
398 B
Go
package tcp
|
|
|
|
import (
|
|
"log"
|
|
"net"
|
|
)
|
|
|
|
type Server struct{}
|
|
|
|
func NewServer() *Server {
|
|
return &Server{}
|
|
}
|
|
|
|
func (s *Server) Listen(addr string, handler func(net.Conn)) {
|
|
tcpServer, err := net.Listen("tcp", addr)
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
defer tcpServer.Close()
|
|
|
|
for {
|
|
tcpServerConn, err := tcpServer.Accept()
|
|
if err != nil {
|
|
log.Fatal(err)
|
|
}
|
|
handler(tcpServerConn)
|
|
}
|
|
}
|