Skip to content

请教关于StdContext的一个疑问 #103

Description

@0x4c5

源代码位置:https://github.com/xinliangnote/go-gin-api/blob/master/internal/pkg/core/context.go:line 392
// RequestContext (包装 Trace + Logger) 获取请求的 context (当client关闭后,会自动canceled)
func (c *context) RequestContext() StdContext {
return StdContext{
//c.ctx.Request.Context(),
stdctx.Background(),
c.Trace(),
c.Logger(),
}
}

为何不用c.ctx.Request.Context();个人理解一个请求应该保持一个ctx,这样在请求退出的时候,会保证所有协程都收到结束指令;为何要用一个全新的ctx呢?还望大佬给解惑🙏🙏

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions