12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- package main
- import (
- "context"
- "fmt"
- "git.nspix.com/golang/micro"
- "math/rand"
- "time"
- )
- type (
- Request struct {
- Name string
- Age int
- Co float64
- }
- )
- func main() {
- svr := micro.Init(
- micro.WithName("git.nspix.com/test", "0.0.01"),
- micro.WithoutRegister(),
- micro.WithHttpDebug(),
- micro.WithStats(),
- micro.WithCli(),
- micro.WithPort(6567),
- )
- micro.Handle("getUserList", func(ctx micro.Context) (err error) {
- var req Request
- if err = ctx.Bind(&req); err != nil {
- return err
- }
- return ctx.Success(req)
- }, func(o *micro.HandleOptions) {
- o.DisableCli = false
- })
- go func() {
- time.AfterFunc(time.Second*5, func() {
- for i := 0; i < 10; i++ {
- r := rand.Int63n(10000)
- micro.DeferTick(time.Duration(r)*time.Millisecond, func(ctx context.Context) {
- fmt.Println(time.Now().Unix())
- })
- }
- })
- }()
- if err := svr.Run(); err != nil {
- fmt.Println(err)
- }
- }
|