context.go 422 B

1234567891011121314151617181920212223242526272829
  1. package pomeloClient
  2. import (
  3. "time"
  4. cmsg "github.com/mhaya/net/parser/pomelo/message"
  5. )
  6. type (
  7. RequestContext struct {
  8. *time.Ticker
  9. Chan chan *cmsg.Message
  10. }
  11. )
  12. func NewRequestContext(t time.Duration) RequestContext {
  13. return RequestContext{
  14. Ticker: time.NewTicker(t),
  15. Chan: make(chan *cmsg.Message, 1),
  16. }
  17. }
  18. func (p *RequestContext) Close() {
  19. if p.Chan != nil {
  20. close(p.Chan)
  21. }
  22. p.Ticker.Stop()
  23. }