zoukankan      html  css  js  c++  java
  • Modification should be made to copies of the returned MD.

    C:/Go/pkg/mod/google.golang.org/grpc@v1.29.1/metadata/metadata.go:180


    // FromOutgoingContextRaw returns the un-merged, intermediary contents
    // of rawMD. Remember to perform strings.ToLower on the keys. The returned
    // MD should not be modified. Writing to it may cause races. Modification
    // should be made to copies of the returned MD.
    //
    // This is intended for gRPC-internal use ONLY.
    func FromOutgoingContextRaw(ctx context.Context) (MD, [][]string, bool) {
    raw, ok := ctx.Value(mdOutgoingKey{}).(rawMD)
    if !ok {
    return nil, nil, false
    }

    return raw.md, raw.added, true
    }

    // FromOutgoingContext returns the outgoing metadata in ctx if it exists. The
    // returned MD should not be modified. Writing to it may cause races.
    // Modification should be made to copies of the returned MD.
    func FromOutgoingContext(ctx context.Context) (MD, bool) {
    raw, ok := ctx.Value(mdOutgoingKey{}).(rawMD)
    if !ok {
    return nil, false
    }

    mds := make([]MD, 0, len(raw.added)+1)
    mds = append(mds, raw.md)
    for _, vv := range raw.added {
    mds = append(mds, Pairs(vv...))
    }
    return Join(mds...), ok
    }
  • 相关阅读:
    计算机英语
    NSQ学习记录
    Java学习记录-注解
    VS插件开发

    双链表
    顺序表
    顺序队列
    顺序栈

  • 原文地址:https://www.cnblogs.com/rsapaper/p/14862618.html
Copyright © 2011-2022 走看看