PThreads:读/写锁:如何检查线程是否持有写锁?

时间:2011-05-04 01:27:57

标签: iphone multithreading posix readerwriterlock

我正在为iphone dev实现pthread_rwlock_t的包装器。 Docs说获取写锁定后获取读锁定是未定义的。 POSIX是否允许我查询是否已经有写锁定? 或者,防止这种情况发生的最佳方法是什么?

谢谢!

1 个答案:

答案 0 :(得分:2)

你的包装器应该跟踪它是否已经在该线程中保持写锁定。你可以通过多种方式实现这一目标,但是看看ilke boostACE这些受欢迎的图书馆可能会有所帮助。

您应该考虑使用其中一个现有的库,并且不必担心重新实施之前可能已经完成的工作。