libgo icon indicating copy to clipboard operation
libgo copied to clipboard

channel::TimedPop 概率丢数据

Open dearbird opened this issue 3 years ago • 0 comments

image

noTimeoutLock 上锁后,尝试wakeup协程,这时候,可能协程正好超时唤醒了,wakup调用失败,没有更新数据。 也就是timedpop调用返回了true, 但是数据并没有取回。

暂时解决办法: 把noTimeoutLock 上锁逻辑移动到Processer::Wakeup的回调函数中。

dearbird avatar Nov 27 '20 08:11 dearbird