。。。
package main import ( "log" "net/http" "time" "github.com/gin-gonic/gin" ) func main() { // 1.创建路由 // 默认使用了2个中间件Logger(), Recovery() r := gin.Default() // 1.异步 r.GET("/long_async", func(c *gin.Context) { // 需要搞一个副本 copyContext := c.Copy() c.JSON(http.StatusOK, "hehe") // 异步处理 go func() { time.Sleep(5 * time.Second) log.Println("异步执行:" + copyContext.Request.URL.Path) }() }) // 2.同步 r.GET("/long_sync", func(c *gin.Context) { time.Sleep(5 * time.Second) log.Println("同步执行:" + c.Request.URL.Path) c.JSON(http.StatusOK, "hehe") }) r.Run(":8000") }