docs: README.md 增加部分示例
This commit is contained in:
19
examples/internal/deadlock-detect-server/main.go
Normal file
19
examples/internal/deadlock-detect-server/main.go
Normal file
@@ -0,0 +1,19 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"github.com/kercylan98/minotaur/server"
|
||||
"time"
|
||||
)
|
||||
|
||||
func main() {
|
||||
srv := server.New(server.NetworkWebsocket,
|
||||
server.WithDeadlockDetect(time.Second*5),
|
||||
)
|
||||
srv.RegConnectionReceivePacketEvent(func(srv *server.Server, conn *server.Conn, packet []byte) {
|
||||
time.Sleep(10 * time.Second)
|
||||
conn.Write(packet)
|
||||
})
|
||||
if err := srv.Run(":9999"); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
20
examples/internal/room-shunt-server/main.go
Normal file
20
examples/internal/room-shunt-server/main.go
Normal file
@@ -0,0 +1,20 @@
|
||||
package main
|
||||
|
||||
import "github.com/kercylan98/minotaur/server"
|
||||
|
||||
func main() {
|
||||
srv := server.New(server.NetworkWebsocket,
|
||||
server.WithShunt(func(guid int64) chan *server.Message {
|
||||
return make(chan *server.Message, 1024*100)
|
||||
}, func(conn *server.Conn) (guid int64, allowToCreate bool) {
|
||||
guid, allowToCreate = conn.GetData("roomId").(int64)
|
||||
return
|
||||
}),
|
||||
)
|
||||
srv.RegConnectionReceivePacketEvent(func(srv *server.Server, conn *server.Conn, packet []byte) {
|
||||
conn.Write(packet)
|
||||
})
|
||||
if err := srv.Run(":9999"); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
13
examples/internal/simple-echo-websocket-server/main.go
Normal file
13
examples/internal/simple-echo-websocket-server/main.go
Normal file
@@ -0,0 +1,13 @@
|
||||
package main
|
||||
|
||||
import "github.com/kercylan98/minotaur/server"
|
||||
|
||||
func main() {
|
||||
srv := server.New(server.NetworkWebsocket)
|
||||
srv.RegConnectionReceivePacketEvent(func(srv *server.Server, conn *server.Conn, packet []byte) {
|
||||
conn.Write(packet)
|
||||
})
|
||||
if err := srv.Run(":9999"); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
10
examples/internal/ticker-server/main.go
Normal file
10
examples/internal/ticker-server/main.go
Normal file
@@ -0,0 +1,10 @@
|
||||
package main
|
||||
|
||||
import "github.com/kercylan98/minotaur/server"
|
||||
|
||||
func main() {
|
||||
srv := server.New(server.NetworkWebsocket, server.WithTicker(50, false))
|
||||
if err := srv.Run(":9999"); err != nil {
|
||||
panic(err)
|
||||
}
|
||||
}
|
||||
19
examples/internal/ticker/ticker.go
Normal file
19
examples/internal/ticker/ticker.go
Normal file
@@ -0,0 +1,19 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"github.com/kercylan98/minotaur/utils/timer"
|
||||
"github.com/kercylan98/minotaur/utils/times"
|
||||
"sync"
|
||||
)
|
||||
|
||||
func main() {
|
||||
var ticker = timer.GetTicker(10)
|
||||
var wait sync.WaitGroup
|
||||
wait.Add(3)
|
||||
ticker.Loop("LOOP", timer.Instantly, times.Second, timer.Forever, func() {
|
||||
fmt.Println("LOOP")
|
||||
wait.Done()
|
||||
})
|
||||
wait.Wait()
|
||||
}
|
||||
Reference in New Issue
Block a user