如何将Go语言中的上下文取消操作描述为一个长尾?
- 内容介绍
- 文章标签
- 相关推荐
本文共计1674个文字,预计阅读时间需要7分钟。
女宣篇文章将阐述如何利用上下文库的取消特性,通过一些模式和最佳实践来提升你的程序运行更快、更健壮。PS:丰富的技术、多女宣篇,本篇将解读我们如何利用上下文库优化程序效率。
女主宣言本篇文章将解释我们如何利用上下文库的取消特性并通过一些模式和最佳实践来使用取消使你的程序更快、更健壮。PS丰富的一线技术、多女主宣言
本篇文章将解释我们如何利用上下文库的取消特性并通过一些模式和最佳实践来使用取消使你的程序更快、更健壮。
PS丰富的一线技术、多元化的表现形式尽在“HULK一线技术杂谈”点关注哦
许多使用Go的人都会用到它的上下文库。大多数使用 context 进行下游操作比如发出HTTP调用或者从数据库获取数据或者在协程中执行异步操作。最常见的用法是传递可由所有下游操作使用的公共数据。然而一个不太为人所知但非常有用的上下文特性是它能够在中途取消或停止一个操作。
本篇文章将解释我们如何利用上下文库的取消特性并通过一些模式和最佳实践来使用取消使你的程序更快、更健壮。
为什么需要取消
简而言之我们需要取消以防止我们的系统做不不需要的工作。
考虑HTTP服务器对数据库的调用的常见情况并将查询的数据返回给客户端
时间图如果一切都很完美就会是这样的
但是如果客户端取消了中间的请求会发生什么呢例如如果客户端关闭了他们的浏览器这可能会发生。如果没有取消应用服务器和数据库将继续执行它们的工作即使工作的结果将被浪费
理想情况下如果我们知道进程在本例中是HTTP请求停止了我们希望流程的所有下游组件停止工作
1
上下文取消
现在我们知道了为什么需要取消让我们来看看如何实现它。
本文共计1674个文字,预计阅读时间需要7分钟。
女宣篇文章将阐述如何利用上下文库的取消特性,通过一些模式和最佳实践来提升你的程序运行更快、更健壮。PS:丰富的技术、多女宣篇,本篇将解读我们如何利用上下文库优化程序效率。
女主宣言本篇文章将解释我们如何利用上下文库的取消特性并通过一些模式和最佳实践来使用取消使你的程序更快、更健壮。PS丰富的一线技术、多女主宣言
本篇文章将解释我们如何利用上下文库的取消特性并通过一些模式和最佳实践来使用取消使你的程序更快、更健壮。
PS丰富的一线技术、多元化的表现形式尽在“HULK一线技术杂谈”点关注哦
许多使用Go的人都会用到它的上下文库。大多数使用 context 进行下游操作比如发出HTTP调用或者从数据库获取数据或者在协程中执行异步操作。最常见的用法是传递可由所有下游操作使用的公共数据。然而一个不太为人所知但非常有用的上下文特性是它能够在中途取消或停止一个操作。
本篇文章将解释我们如何利用上下文库的取消特性并通过一些模式和最佳实践来使用取消使你的程序更快、更健壮。
为什么需要取消
简而言之我们需要取消以防止我们的系统做不不需要的工作。
考虑HTTP服务器对数据库的调用的常见情况并将查询的数据返回给客户端
时间图如果一切都很完美就会是这样的
但是如果客户端取消了中间的请求会发生什么呢例如如果客户端关闭了他们的浏览器这可能会发生。如果没有取消应用服务器和数据库将继续执行它们的工作即使工作的结果将被浪费
理想情况下如果我们知道进程在本例中是HTTP请求停止了我们希望流程的所有下游组件停止工作
1
上下文取消
现在我们知道了为什么需要取消让我们来看看如何实现它。

