package main import ( "log" "net" ) func server(ls net.Listener) { for { c, err := ls.Accept() if err != nil { log.Fatalf("Accept: %v", err) } c.Close() } } func main() { ls, err := net.ListenTCP("tcp4", &net.TCPAddr{net.ParseIP("127.0.0.1"), 0}) if err != nil { log.Fatalf("listen: %v", err) } go server(ls) for i := 0; i < 20000; i++ { if i % 100 == 0 { log.Printf("at %d", i) } c, err := net.Dial("tcp", ls.Addr().String()) if err != nil { log.Fatalf("Accept: %v", err) } var buf [1]byte c.Read(buf[:]) } }