【发布时间】:2009-06-10 15:22:47
【问题描述】:
我有几个修改线程和一些读取线程,它们都访问全局变量 X。我想让我的同步策略是这样的:
当一个线程试图修改 X 时,它首先需要一个锁,多个修改线程可能需要多个锁。
当一个线程试图读取 X 时,它必须等到所有修改线程都解除锁定。
linux pthread 库中是否有解决这种情况的方法?非常感谢
【问题讨论】:
标签: synchronization locking pthreads
我有几个修改线程和一些读取线程,它们都访问全局变量 X。我想让我的同步策略是这样的:
当一个线程试图修改 X 时,它首先需要一个锁,多个修改线程可能需要多个锁。
当一个线程试图读取 X 时,它必须等到所有修改线程都解除锁定。
linux pthread 库中是否有解决这种情况的方法?非常感谢
【问题讨论】:
标签: synchronization locking pthreads
您正在寻找读/写锁(或读写器锁)。我相信there is one 在 pthreads (pthread_rwlock_*) 中。
【讨论】: