生产者消费者并发而不等待POSIX

时间:2013-06-23 15:44:40

标签: c concurrency posix

我有一定的资源,两个线程一个是生产者,另一个是消费者。 生产者每隔一段时间更新资源,更新需要一些时间,我不希望消费者等待。我希望他在生产者更新时使用资源的旧值。 如何在不让消费者等待的情况下同步两个线程

2 个答案:

答案 0 :(得分:2)

您可以拥有一个原子指针,消费者可以通过该指针读取生产者生成的内容。生成器生成新数据后,将原子指针的值更改为指向新数据。

答案 1 :(得分:0)

共享资源在更新/读取时必须被锁定。我猜消费者可以将资源复制到自己的缓冲区中吗?或者这会花多长时间?