guonaihong
guonaihong
我有8c16t 机器, 只有32G内存, 有哪些测试代码? 我来跑下
### 原因 目前设计是这样的,SetTimeout和WithContext的使用只会有一个生效。后面一个覆盖前面一个。 原因是SetTimeout也是由context实现的。这段代码处理优先级 ```go func (s *Setting) SetTimeout(d time.Duration) { s.Index++ s.TimeoutIndex = s.Index s.Timeout = d } ``` ### 解决办法-优化提示消息 > 会出现context cancel的异常 老版本的context.Context实现有个问题,不能使用自定义的错误类型。所以这里的错误有些不友好。 这块我今天或者明天优化下,如果是Timeout的错误就显示"Timeout“, 唯一的遗憾只能 > 1.20的版本这么实现...
> 其实传递WithContext(ctx)的原因主要还是外侧代码需要控制goout内部的中断 > > 比如是一个并发任务的控制端 > > ``` > ctx, cancel := context.WithCancel(context.Background,) // 总控制端 > if Ctrl +C 被按下 { > cancel() > } > > go func() {...