腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
4
回答
互斥
锁
只能从等待它的同一线程中释放吗?
、
、
一个
互斥
锁
真的只能从等待那个
互斥
锁
的线程中释放吗?如果是,为什么
互斥
是这样的?那么为什么我们说一个
互斥
锁
可以跨多个进程工作呢?什么是命名
互斥
锁
和未命名
互斥
锁
?我对这个问题真的很困惑!如果我想在一个线程中等待
互斥
锁
,并从另一个线程发信号给它,我应该怎么做?
浏览 1
提问于2011-06-13
得票数 3
回答已采纳
2
回答
正确使用Mutexes
、
互斥
锁
是什么数据类型?我看到
锁
被设置为int,
互斥
锁
被声明为so pthread_mutex_t mtx,在哪里设置
互斥
锁
的数据类型,或者将
互斥
锁
连接到变量?
浏览 0
提问于2011-04-24
得票数 1
回答已采纳
8
回答
递归锁定(Mutex)与非递归锁定(Mutex)
、
、
、
、
POSIX允许
互斥
锁
是递归的。这意味着同一线程可以锁定同一
互斥
锁
两次,而不会死锁。当然,它还需要解锁两次,否则其他线程都无法获得
互斥
锁
。并不是所有支持pthread的系统都支持递归
互斥
锁
,但如果它们想成为的话。 其他API(更高级的API)通常也提供
互斥
锁
,通常称为
锁
。一些系统/语言(例如Cocoa Objective-C)同时提供递归和非递归
互斥
锁
。有
浏览 8
提问于2008-10-09
得票数 195
回答已采纳
1
回答
持有
锁
的线程可以进入休眠状态吗?
我对
互斥
锁
持怀疑态度。Global mutex;Acquire lock on mutex;Release lock; 如果线程获得
互斥
锁
(例如,tbb
互斥
锁
),它是否可以在持有
锁
的同时被处理器休眠并在稍后唤醒以完成作业,或者当线程获得
互斥
锁
的
锁
时,它会不间断地继续工作,直到释放<e
浏览 3
提问于2012-03-10
得票数 1
回答已采纳
3
回答
互斥
锁
的所有权是否只严格地传递给在解锁前请求
锁
的线程?
、
情况: 如果在调用pthread_mutex_unlock()时
浏览 5
提问于2016-08-29
得票数 2
回答已采纳
4
回答
互斥
锁
到底是如何工作的?
、
、
、
互斥
背后的思想是在任何时候只允许一个线程访问内存的一部分。如果一个线程锁定
互斥
锁
,任何其他的
锁
尝试都将被阻止,直到第一个线程解锁。然而,这是如何实现的呢?要锁定自己,
互斥
锁
必须在某处设置一个位,表明它被锁定了。但是,如果第二个
互斥
锁在读的同时第一个
互斥
锁在写,该怎么办呢?更糟糕的是,如果它们同时锁定
互斥
锁
呢?
互斥
锁
将会屈服于它想要防止的同样的问题。
互斥
锁<
浏览 0
提问于2012-08-02
得票数 36
回答已采纳
1
回答
互斥
锁
总是作为自旋等待实现吗?
、
、
、
互斥
锁
总是作为自旋等待实现吗?
互斥
锁
能否实现为块等待?(操作系统概念第5.4节只提到通过spin等待实现。见下文。)(作为比较,信号量的等待可以通过在循环中繁忙地旋转或被阻塞来实现。如果
互斥
锁
可以实现为块等待,那么
互斥
锁
是否与二进制信号量相同?(Stalling的OS书中说
互斥
锁
和二进制信号量是否必须是锁定
互斥
锁
的进程(将值设置为零)。它没有提到他们是否有不同的旋转,只等待。在操作
浏览 0
提问于2020-11-09
得票数 0
1
回答
锁
层次结构和读取器-写入器
互斥
、
、
、
、
假设我使用
锁
层次结构来避免死锁。如果我使用读取器-写入器
互斥
锁
,我应该如何考虑和使用它们?在每个读写
互斥
锁
的层次结构中是否存在(我能想到的)不同的读
锁
和写
锁
吗?(如果是,这意味着这两个
锁
可以在层次结构中分配不同的级别。)使用读写
互斥
锁
是否会在层次结构中引入死锁的可能性?(如果是,如何(如果可以)避免这种情况?)那么“可升级”
锁
(读取器
锁
可以转变为写入器
锁
,而无需先
浏览 2
提问于2011-05-04
得票数 2
回答已采纳
3
回答
不带
锁
互斥
调用pthread_cond_signal
、
、
、
、
我在某个地方读到,我们应该在调用pthread_cond_signal之前锁定
互斥
锁
,并在调用它之后解锁
互斥
锁
: pthread_cond_signal()例程用于向等待条件变量的另一个线程发出信号(应该在
互斥
锁
后调用它,并且必须解锁
互斥
锁
,以便完成pthread_cond_wait()例程。我的问题是:在不锁定
互斥
锁
的情况下调用pthread_cond_signal或pthread_cond_broadcast方
浏览 0
提问于2010-12-28
得票数 92
回答已采纳
2
回答
在Windows上,进程中的
互斥
锁在哪些情况下比CS更好?
、
、
、
我认为临界区对象比
互斥
锁
更适合于一个进程内的线程之间的同步。这是因为CS对象在用户模式下工作,而
互斥
对象在内核模式下工作。所以CS对象比
互斥
对象更轻。所以,我真的很好奇,在什么情况下,进程中的
互斥
锁
比CS更好?
浏览 14
提问于2021-03-08
得票数 0
2
回答
等同于Mac OS X中Windows的命名
互斥
?
、
、
、
、
在Windows中,全局名为
互斥
锁
的进程中有一个被放弃的状态,这意味着
互斥
锁
的当前所有者进程在没有释放
互斥
锁
的情况下已经消失。(它可能是由应用程序崩溃引起的)如果没有放弃状态,它将永远等待一个不属于任何人的
互斥
锁
。还有另一种方法,使用超时来假设如果在一段时间内无法获得
互斥
锁
就放弃该
互斥
锁
,
浏览 5
提问于2014-05-29
得票数 7
3
回答
进程间
互斥
锁
的使用
、
、
、
、
操作系统: Windows语言: C/C++ 该设计要求跨进程及其子进程使用
互斥
变量。如果我在一个进程中创建
互斥
锁
,我必须在另一个进程中打开
互斥
锁
来检查临界区的可用性。要打开
互斥
锁
,我需要知道在父进程中创建的
互斥
锁
的名称。假设,如果我保留
互斥
锁
作为我的应用程序名。我可以知道
互斥
锁
的名称,因为它是固定的。但是,如果我并行加载应用程序的第二个实例,就会出现混
浏览 3
提问于2011-03-16
得票数 3
回答已采纳
3
回答
静态和动态pthread
互斥
初始化
、
、
、
、
可以使用init函数动态初始化
互斥
: pthread_mutex_init(&theMutex, NULL);书中说,如果我们动态创建
互斥
锁
,我们必须调用"pthread_mutex_destroy(&theMutex)“,
互斥
锁
将在堆区域创建,因此我们必
浏览 1
提问于2013-11-28
得票数 1
4
回答
递归和非递归
锁
(
互斥
锁
)
、
、
、
所以我一直在读关于
锁
的文章,但问题是大多数信息都是不一致的,或者没有定义平台。在,最被接受的答案是: 2)如果在
锁
中由线程A和线程B调用在非递归
互斥</e
浏览 9
提问于2014-10-30
得票数 4
回答已采纳
2
回答
互斥
和信号()和等待()操作
、
、
我有两个关于
互斥
锁
的问题: 1.当一个
互斥
锁
变量等于1,我们对它做一个信号()操作时,预计会发生什么? 2.当
互斥
锁
等于0,我们做一个wait(),那么线程被阻塞,
互斥
锁
保持为0。对,是这样?现在
互斥
锁
的值是多少?0还是1?
浏览 1
提问于2015-12-29
得票数 1
回答已采纳
5
回答
互斥
锁
优先级
、
、
m.unlock();m是一个
互斥
锁
(在我的例子中是一个c++11 std::mutex,但我认为如果我使用不同的库,它不会改变)。假设第一个线程拥有
互斥
锁
,并且它在(...) part中做了一些事情。第二个线程试图获取
互斥
锁
,但它在等待第一线程释放m。问题是:当线程1结束它的(...)执行并解锁
互斥
锁
时,我们能确保线程2获取
互斥
锁
吗?或者线程1可以在线程2之前重新获取
互斥
锁
浏览 1
提问于2012-12-22
得票数 5
回答已采纳
1
回答
在接收到来自cond变量的信号后,我们需要解锁
互斥
锁
吗?
、
、
、
我用C语言制作了一个带有
互斥
变量和条件变量的教育应用程序。while (!== 0)) 你能解释一下吗,当信号使
互斥
锁
被锁定时,当信号使
互斥
锁
被锁定时,为什么在“同时”状态之后(以及从第二个线程接收信号)我们需要解锁
互斥
锁
?我从网络上获得了很多例子,但是当我想在接
浏览 1
提问于2018-06-20
得票数 0
回答已采纳
2
回答
为什么“锁定
互斥
锁
的进程必须是解锁它的进程"?
、
、
、
以下是两本操作系统书中关于
互斥
锁
和二进制信号量的一些讨论。与二进制信号量相关的一个概念是
互斥
。在操作系统概念中,5.5 Mutex Locks将
互斥
锁定义为: 我们使用
互斥
锁
保护关键区域,从而防止种族状况。也就是说,进程必须在进入关键部分之前获取
锁
;它在退出关键部分时释放
锁
。5.8 ()函数获取
锁
,Figure ()函数释放
锁
,如图5.8所示。
互斥
锁<
浏览 0
提问于2020-11-09
得票数 1
3
回答
获取
互斥
量的列表?
程序创建
互斥
锁
作为其启动的一部分。我不知道这个
互斥
锁
的格式,所以我想知道是否有一种方法可以获得所有非废弃
互斥
锁
的列表,打开程序,获得一个新的列表,看看是否可以通过删除所有重复的条目来找到
互斥
锁
。
浏览 1
提问于2009-09-07
得票数 17
1
回答
授予对std::mutex的优先访问权限
、
、
我目前有两个这样的函数,它们共享同一个
互斥
锁
。fooB() { doWork()} 我的问题是,是否可以指定fooA()
互斥
锁
应该具有优先级我知道
互斥
锁
是先到先服务的。假设有四个线程t1,t2,t3,t4。现在假设线程t1当前拥有fooB()中的
互斥
锁
,并且t2和t3正在排队等待fooB()中的
互斥</e
浏览 60
提问于2021-08-13
得票数 3
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Go语言互斥锁
互斥锁、自旋锁、读写锁……理清它们的区别和应用
线程互斥锁Lock与全局解释器锁GIL
妹妹问我:互斥锁、自旋锁、读写锁、悲观锁、乐观锁的应用场景
面试官:你说说互斥锁、自旋锁、读写锁、悲观锁、乐观锁的应用场景
热门
标签
更多标签
云服务器
ICP备案
实时音视频
即时通信 IM
对象存储
活动推荐
运营活动
广告
关闭
领券