| | |
| | | import ( |
| | | |
| | | "flag" |
| | | "fmt" |
| | | "sync" |
| | | "net/http" |
| | | _ "net/http/pprof" |
| | |
| | | |
| | | func nRecvImpl(c deliver.Deliver, index int) { |
| | | var msg []byte |
| | | //var wg1 sync.WaitGroup |
| | | //p,_ := ants.NewPool(100) |
| | | //syncCalculateSum := func() { |
| | | // Task(msg) |
| | | // wg1.Done() |
| | | //} |
| | | //wg1.Wait() |
| | | var wg1 sync.WaitGroup |
| | | p,_ := ants.NewPool(20) |
| | | syncCalculateSum := func() { |
| | | Task(msg) |
| | | wg1.Done() |
| | | } |
| | | wg1.Wait() |
| | | var err error |
| | | for { |
| | | msg, err = c.Recv() |
| | | if err == nil { |
| | | //wg1.Add(1) |
| | | //_ = p.Submit(syncCalculateSum) |
| | | Task(msg) |
| | | wg1.Add(1) |
| | | _ = p.Submit(syncCalculateSum) |
| | | //go Task(msg) |
| | | } |
| | | } |
| | | } |