Golang Context是什么

news2024/11/26 13:36:34

一、这篇文章我们简要讨论Golang的Context有什么用

1、首先说一下Context的基本作用,然后在讨论他的实现
(1)数据传递,子Context只能看到自己的父Context的数据,子Context是不能看到孙Context添加的数据。
(2)父子协程的协同,比如同时取消父子协程

2、基本数据结构

Context的结构我们可以看一张图

在这里插入图片描述
其实可以把Context 理解成一个特殊的哈希表,我们可以看看他的结构体。
在这里插入图片描述

Value接口,就是放入key和Value
Done()接口是一个管道,负责接收父协程结束信号量

一个Context A可以生成另一个Context B,并且Context B会继承 Context A的数据

3、实际场景应用

Context可以用来保存一些账户信息,包括用户名、邮箱等多个接口可能需要的公共信息

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1565350.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

c++的学习之路:9、STL简介与string(1)

一、STL 1、什么是STL STL(standard template libaray-标准模板库):是C标准库的重要组成部分,不仅是一个可复用的组件库,而且是一个包罗数据结构与算法的软件框架。 也就是说STL就是一个模板,这个模板就是整合了很多库让我们方…

磁盘如何分配数据数据

📝个人主页:五敷有你 🔥系列专栏:算法分析与设计 ⛺️稳中求进,晒太阳 磁盘如何分配数据 数据切割: 按照固定长度进行切割---》编码翻译(常用) 计算机要求按照8bit(字节)进…

【蓝桥杯练习】tarjan算法求解LCA

还是一道比较明显的求LCA(最近公共祖先)模型的题目,我们可以使用多种方法来解决该问题,这里我们使用更好写的离线的tarjan算法来解决该问题。 除去tarjan算法必用的基础数组,我们还有一个数组d[],d[i]记录的是每个点的出度,也就是它的延迟时间…

学习Python第十五天:第一个程序python程序

第一个程序:ZIP文件口令破解机 编写ZIP文件口令破解机要从学习zipfile库的使用方法着手,打开pythn解释器,我们用help(zipfile)命令进一步了解这个库,并重点看一下zipfile类中的extractall()方法,这个类和这个方法对我…

在仿真环境中运行lio-sam

文章目录 前言LIO-SAM环境编译运行键盘控制编译lio-sam遇到的问题前言 Gazebo 仿真提供了一个高效且成本低廉的平台,使研究人员和开发者能够在安全且可控的虚拟环境中设计、测试和优化机器人系统。它允许快速原型制作和迭代,精确控制测试条件,并能模拟复杂或危险的场景,从…

2013年认证杯SPSSPRO杯数学建模B题(第二阶段)流行音乐发展简史全过程文档及程序

2013年认证杯SPSSPRO杯数学建模 B题 流行音乐发展简史 原题再现: 随着互联网的发展,流行音乐的主要传播媒介从传统的电台和唱片逐渐过渡到网络下载和网络电台等。网络电台需要根据收听者的已知喜好,自动推荐并播放其它音乐。由于每个人喜好…

【解决】Unity Profile | FindMainCamera

开发平台:Unity 2020.3.7f1c1 关键词:FindMainCamera   问题背景 ModelViewer 是开发者基于 UnityEngine 编写的相机控制组件。ModelView.Update 中调度52次并触发3次GC.Collect。显然并不期望并尽可能避免 Update 造成的GC 问题。事实上 FindMainCame…

C语言第三十九弹---预处理(上)

✨个人主页: 熬夜学编程的小林 💗系列专栏: 【C语言详解】 【数据结构详解】 预处理 1、预定义符号 2、#define定义常量 3、#define定义宏 4、带有副作用的宏参数 5、宏替换的规则 6、宏和函数的对比 总结 在C语言中,预处…

经久耐用耐强腐蚀PFA材质气体洗涤瓶全氟烷氧基树脂尾气吸收瓶

PFA洗气瓶是一种常用于净化和干燥各种气体的实验室器皿,以去除其中的水分、油脂、颗粒物等杂质,从而使需要用到的气体满足实验要求。 PFA气体吸收瓶 PFA洗气瓶的工作原理: 主要是通过液体吸收、溶解或发生化学反应来去除气体中的杂质。在洗气…

LeetCode题练习与总结:螺旋矩阵

一、题目描述 给你一个 m 行 n 列的矩阵 matrix ,请按照 顺时针螺旋顺序 ,返回矩阵中的所有元素。 示例 1: 输入:matrix [[1,2,3],[4,5,6],[7,8,9]] 输出:[1,2,3,6,9,8,7,4,5]示例 2: 输入:ma…

物联网行业趋势——青创智通

工业物联网解决方案-工业IOT-青创智通 随着科技的不断进步和应用场景的日益扩大,物联网行业呈现出迅猛发展的势头。作为当今世界最具前瞻性和战略意义的领域之一,物联网行业的趋势和未来发展值得深入探讨。 ​一、物联网行业正逐渐实现全面普及。随着物…

matlab使用教程(32)—求解偏微分方程(3)

1求解 PDE 方程组 此示例说明由两个偏微分方程构成的方程组的解的构成,以及如何对解进行计算和绘图。 以如下 PDE 方程组为例 要在 MATLAB 中求解该方程,您需要对方程、初始条件和边界条件编写代码,然后在调用求解器pdepe 之前选择合适的解…

“帮助“Java成长的世界级大师不简单!

文章目录 初探编程:“天啊,真酷,程序真的能学习。”哺育Java成长,成为Java幕后英雄出书《Effective Java》斩获Jolt图书大奖 是谁?作品一出版就获得著名的Jolt图书大奖,每一版本豆瓣评分均超9.0&#xff01…

某眼实时票房接口获取

某眼实时票房接口获取 前言解决方案1.找到veri.js2.找到signKey所在位置3.分析它所处的这个函数的内容4.index参数的获取5.signKey参数的获取运行结果关键代码另一种思路票房接口:https://piaofang.maoyan.com/dashboard-ajax https://piaofang.maoyan.com/dashboard 实时票房…

LabVIEW专栏三、探针和断点

探针和断点是LabVIEW调试的常用手段,该节以上一节的"测试耗时"为例 探针可以打在有线条的任何地方,打上后,经过这条线的所有最后一次的数值都会显示在探针窗口。断点可以打在程序框图的所有G代码对象,包括结构&#xf…

意大利公司注册

意大利是发达工业国家,是欧洲第四大、世界第八大经济体。机械设备、汽车制造、生物医药、航天航空等居于世界领先地位,中小企业发达,被誉为“中小企业王国”,旅游资源和历史文化遗产丰富。2021年,意大利GDP为1.78万亿欧…

Intellij IDEA / Android studio 可持续开发笔记

Intellij 的Java/安卓工具链有着一种不可持续性,这种不可持续性体现在多个方面。 首先是不可持续运行。IDEA 使用时间越长,内存占用越大,从不主动释放。运行时间越长,日志越多,从不主动清理。 然后是不完整的开源&am…

docker搭建CI/CD环境配置过程中的常见问题

一、Jenkins 1、pull镜像问题 docker pull jenkins/jenkins:lts Using default tag: latest Trying to pull repository docker.io/library/centos ... Get https://registry-1.docker.io/v2/library/centos/manifests/latest: Get https://auth.docker.io/token?scoperepo…

Ollama教程——入门:开启本地大型语言模型开发之旅

Ollama教程——入门:开启本地大型语言模型开发之旅 引言安装ollamamacOSWindows预览版LinuxDocker ollama的库和工具ollama-pythonollama-js 快速开始运行模型访问模型库 自定义模型从GGUF导入模型自定义提示 CLI参考创建模型拉取模型删除模型复制模型多行输入多模态…