runningwater 4 년 전
부모
커밋
0a63e480e6
1개의 변경된 파일6개의 추가작업 그리고 0개의 파일을 삭제
  1. 6 0
      controller.go

+ 6 - 0
controller.go

@@ -35,13 +35,19 @@ func FooControllerHandler(ctx *framework.Context) error {
     select {
         // 监听 panic
     case <-panicChan:
+        ctx.WriterMux().Lock()
+        defer ctx.WriterMux().Unlock()
         ctx.Json(500, "panic")
         // 监听结束
     case <-finish:
         fmt.Println("finish")
         // 监听超时
     case <-durationCtx.Done():
+        ctx.WriterMux().Lock()
+        defer ctx.WriterMux().Unlock()
         ctx.Json(500, "time out")
+        // 这里记得设置标记
+        ctx.SetHasTimeout()
     }
     return ctx.Json(200, map[string]interface{}{
         "code": 0,