Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package main
- import (
- "fmt"
- "net"
- "runtime"
- "time"
- )
- func server() {
- b := make([]byte, 16, 16)
- p := uint64(0)
- listener, err := net.Listen("tcp", "127.0.0.1:10000")
- if err == nil {
- conn, err := listener.Accept()
- if err == nil {
- t0 := time.Now()
- fmt.Println("new connection from", conn.RemoteAddr())
- for {
- n, err := conn.Write(b)
- if n < len(b) {
- fmt.Println(n)
- }
- p += uint64(n)
- if (p > 10000000) || (err != nil) {
- break
- }
- }
- conn.Close()
- fmt.Println("sent", p, "in sec", time.Since(t0))
- }
- }
- }
- func client() {
- b := make([]byte, 16, 16)
- p := uint64(0)
- conn, err := net.DialTimeout("tcp", "127.0.0.1:10000", 10*time.Second)
- if err == nil {
- for {
- n, err := conn.Read(b)
- if n < len(b) {
- fmt.Println(n)
- }
- p += uint64(n)
- if err != nil {
- break
- }
- }
- conn.Close()
- fmt.Println("recv total", p)
- }
- }
- func main() {
- fmt.Println(runtime.Version())
- runtime.GOMAXPROCS(2)
- go server()
- client()
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement