You've already forked qlg.tsgz.moe
Init Repo
This commit is contained in:
41
vendor/swoole/benchmark/tcp.go
vendored
Executable file
41
vendor/swoole/benchmark/tcp.go
vendored
Executable file
@ -0,0 +1,41 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"bufio"
|
||||
"fmt"
|
||||
"net"
|
||||
"runtime"
|
||||
)
|
||||
|
||||
func Echo(c net.Conn) {
|
||||
defer c.Close()
|
||||
for {
|
||||
line, err := bufio.NewReader(c).ReadString('\n')
|
||||
if err != nil {
|
||||
//fmt.Printf("Failure to read:%s\n", err.Error())
|
||||
return
|
||||
}
|
||||
_, err = c.Write([]byte(line))
|
||||
if err != nil {
|
||||
//fmt.Printf("Failure to write: %s\n", err.Error())
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func main() {
|
||||
|
||||
runtime.GOMAXPROCS(runtime.NumCPU() - 1)
|
||||
|
||||
fmt.Printf("Server is ready...\n")
|
||||
l, err := net.Listen("tcp", ":8053")
|
||||
if err != nil {
|
||||
fmt.Printf("Failure to listen: %s\n", err.Error())
|
||||
}
|
||||
|
||||
for {
|
||||
if c, err := l.Accept(); err == nil {
|
||||
go Echo(c) //new thread
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user