此问题的一个示例是当用户创建资源并删除资源时。我们将执行操作并增加(减少)计数器缓存。
在测试中,有时会出现竞争条件,即 go 例程尚未更新计数器缓存。
编辑:抱歉混淆,澄清一下:计数器缓存不在内存中,它实际上是数据库中的一个字段。竞争条件不是内存中的变量,实际上是 goroutine 写入数据库本身可能很慢!
我目前在操作后使用 1 秒睡眠来确保在测试计数器缓存之前更新了计数器缓存。是否有另一种方法来测试 go 例程而无需任意 1 秒睡眠等待 go 例程完成?
倚天杖
慕标琳琳
相关分类