【记录一个问题】ndk下使用c++11的condition_variable问题较多
1.存在通知丢失的情况:生产者线程通知196次,消费者线程收到190次,导致部分数据无法被处理。
2.cond.wait()方法后的加锁有问题,导致对空队列进行出队操作然后coredump。一直记得wait()之后会重新获得锁的!
暂未找到原因,用轮训+睡眠的笨办法代替了条件变量。
公众号:一本正经的瞎扯
1.存在通知丢失的情况:生产者线程通知196次,消费者线程收到190次,导致部分数据无法被处理。
2.cond.wait()方法后的加锁有问题,导致对空队列进行出队操作然后coredump。一直记得wait()之后会重新获得锁的!
暂未找到原因,用轮训+睡眠的笨办法代替了条件变量。