Golang 设置操作超时的一种方法

news/2024/6/19 6:25:28 标签: golang

读 etcd 源码看到一种超时的设置方法,控制一个循环的总时长,每轮迭代检查一下是否超时,适用于对超时时间要求不是非常精细,并且操作不会阻塞的场景

func main() {
	ctx, cancel := context.WithTimeout(context.Background(), 6*time.Second)
	defer cancel()

	for i := 0; i < 10; i++ {
		select {
		case <-ctx.Done():
			fmt.Println(ctx.Err())
			return
		default:
		}
		time.Sleep(time.Second * time.Duration(i))
		fmt.Printf("in time: %d\n", i)
	}
}

http://www.niftyadmin.cn/n/1531790.html

相关文章

Prometheus源码学习(11)-common_model

文章目录lables.golabelset.gometric.govalue.goalert.gofnv.gosignature.go收获github.com/prometheus/commonv0.35.0/modellables.go 首先声明一系列标签常量&#xff0c;其中 __meta_ 和 __tmp_ 前缀用于标签的中间处理标签名 LabelName 是字符串&#xff0c;命名规范是“可…

sql between and 复制表

1 -between and 包括边界值&#xff0c;如果是日期 截止日期到00点0分 如果截止日期&#xff1a;2019-7-26 则为&#xff1a;2019-7-26 00&#xff1a;00&#xff1a;00 not between adn 不包括边界值 2 复制表 select * into newtable from oldtable where 12 insert into new…

Three.js教程:网格模型

推荐&#xff1a;将 NSDT场景编辑器 加到你的3D工具链 工具集&#xff1a; NSDT简石数字孪生 网格模型(三角形概念) 本节课给大家演示网格模型Mesh渲染自定义几何体BufferGeometry的顶点坐标,通过这样一个例子帮助大家建立**三角形(面)**的概念 三角形(面) 网格模型Mesh其实…

tarjan学习笔记

1.$tarjan$求强连通分量 思想&#xff1a;在$dfs$的过程中&#xff0c;把强连通分量中的点入栈&#xff0c;当找到一个强连通分量的最起始的点&#xff0c;就将其所在强连通分量中的点出栈。 缩点 把强连通分量中的点缩成一个点&#xff0c;进行重新建图&#xff0c;从而解决一…

偶尔发现此地

对于自己的工作一直没有很好的积累&#xff0c;平时看到一些好的文章和思想往往来不及整理就被从脑海中挤掉。希望能在这里留下一点感想&#xff0c;一些思想和点滴记忆。。。转载于:https://www.cnblogs.com/risun/archive/2004/06/16/16241.html

搭建Ceph分布式存储

环境&#xff1a; 系统 IP地址 主机名&#xff08;登录用户&#xff09; 承载角色 Centos 7.4 64Bit 1611 10.199.100.170 dlp&#xff08;yzyu&#xff09; ceph-client&#xff08;root&#xff09; admin-node ceph-client Centos 7.4 64Bit 1611 10.199.100.171 …

生成器和各种推导式

昨日回顾 1. 函数名 -> 第一类对象函数名就是变量名.函数可以赋值函数可以作为集合类的元素函数可以作为参数传递函数可以作为返回值返回2. 闭包语法: 内层函数对外层函数的局部变量的使用def wrapper():name ""def inner():return namereturn inner如何查看一个…

TensorFlow gfile文件操作详解

转&#xff1a;https://blog.csdn.net/u014182497/article/details/80681331 一、gfile模块是什么 gfile模块定义在tensorflow/python/platform/gfile.py&#xff0c;但其源代码实现主要位于tensorflow/tensorflow/python/lib/io/file_io.py&#xff0c;那么gfile模块主要功能是…