gpt4 book ai didi

C 多线程 : What is the advantage of a Read Lock (pthread_rwlock_rdlock) if all threads can access it simultaneously?

转载 作者:太空宇宙 更新时间:2023-11-04 01:00:21 25 4
gpt4 key购买 nike

我对这个线程问题一窍不通:\

我想象 Write Lock 的行为类似于等待全局变量确认的 while。喜欢:

/* pthread_rwlock_wrlock */

while (is_blocked) {
/* waiting */
}
is_blocked = true;

(writing code...)

/* pthread_rwlock_unlock */
is_blocked = false;

这样对吗? Read Lock 是如何工作的?如果共享,为什么要使用?

信息:

pthread_rwlock_rdlock() – 获取共享读锁

pthread_rwlock_wrlock() – 获得独占写锁

最佳答案

读锁的目的是阻止写入。

  • 如果没有写入锁读取器可以获得锁定。
  • 如果根本没有锁作者可以获得锁。

两者都没有简单的实现,一个你为
建议的例子有一个竞争条件,有时会失败。

关于C 多线程 : What is the advantage of a Read Lock (pthread_rwlock_rdlock) if all threads can access it simultaneously?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42252035/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com