Exemplo n.º 1
0
func main() {
	flag.Parse()

	l, err := util.Listen()
	if err != nil {
		log.Fatal(err)
	}
	go accept(l)

	self := l.Addr().String()
	err = util.RegisterPeer(self)
	if err != nil {
		log.Fatal(err)
	}
	go poll(self)

	readInput()
}
Exemplo n.º 2
0
func listen() {
	l, err := util.Listen()
	if err != nil {
		log.Fatal(err)
	}

	err = util.RegisterPeer(l.Addr().String())
	if err != nil {
		log.Fatal(err)
	}

	for {
		c, err := l.Accept()
		if err != nil {
			log.Println(err)
			continue
		}
		go handle(c)
	}
}