DisableReuse

禁止context复用,如果context在所有handler执行之后,还需要使用(如设置了超时出错,但无法对正在执行的handler中断,此时context还在使用中),则需要调用此函数禁用context的复用,除非有必要不建议禁止复用。

Example

  1. package main
  2. import (
  3. "fmt"
  4. "time"
  5. "github.com/vicanso/elton"
  6. "github.com/vicanso/elton/middleware"
  7. )
  8. func main() {
  9. e := elton.New()
  10. e.Use(middleware.NewDefaultResponder())
  11. e.GET("/", func(c *elton.Context) (err error) {
  12. go func() {
  13. time.Sleep(time.Second)
  14. fmt.Println(c)
  15. }()
  16. c.DisableReuse()
  17. c.Body = "Hello, World!"
  18. return
  19. })
  20. err := e.ListenAndServe(":3000")
  21. if err != nil {
  22. panic(err)
  23. }
  24. }