腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
使pthread_rwlock_wrlock递归
、
、
、
上面链接的规范指出,当一个
线程
锁定了写
锁
,而同一个
线程
再次锁定它时,它会导致未定义的行为(我实际上可以观察到这一点,因为在x86
Linux
上调用该函数是一个noop,而在PowerPC
Linux
上它会阻塞
线程
我需要的行为是具有以下特征的读写
锁
:
锁
不是由任何
线程
持有的。
锁
只被零或多个
线程
(包括调用
线程
)读取锁定,并且可能被调用<
浏览 2
提问于2011-08-19
得票数 7
回答已采纳
2
回答
在
linux
上,如何确保解锁死/终止
线程
中锁定的互斥?
、
、
、
在
linux
上,如何确保解锁死/终止的POSIX
线程
中锁定的POSIX互斥
锁
?当
Linux
向程序发送终止或终止信号时,它会
自动
释放吗?但是,我找不到操作系统如何做到这一点的更多细节?
浏览 2
提问于2012-02-09
得票数 4
回答已采纳
3
回答
如何检查
线程
是否持有互斥
c
++
、
、
在我的应用程序(
C
++/
Linux
)中,有时一个
线程
会获取一个互斥
锁
(递归),而获取cancelled.This会导致死锁,因为其他
线程
也会使用相同的互斥
锁
而无法获取它。现在可以检查该
线程
是否正在锁定,任何mutex.My动机都是手动清除该
线程
正在锁定,然后取消该
线程
。提前感谢
浏览 4
提问于2012-05-12
得票数 1
4
回答
线程
安全,无
锁
增量函数?
、
、
、
、
更新:是否有一个
线程
安全的、无
锁
的、在
C
或
C
++中可用的所有
Linux
发行版增量函数上可用的?
浏览 1
提问于2009-11-08
得票数 2
回答已采纳
1
回答
如何检查pthread_mutex是否基于健壮的futex
、
、
、
我试图在
Linux
中使用基于鲁棒futex的
线程
互斥
锁
,因为我需要快速和健壮(恢复“死”
锁
)。如何检查任何
Linux
系统上的
线程
互斥库是否基于健壮的futex? 谢谢!
浏览 6
提问于2013-07-02
得票数 1
3
回答
有没有办法锁定一个互斥
锁
,并让它在给定时间后
自动
解锁?
、
、
、
、
这是在
Linux
上,但理想情况下,我想要一个符合POSIX的解决方案。这两个
线程
都实现为状态机。显而易见的解决方案是使用互斥
锁
来序列化对总线的访问,设置计数器或时间戳,并在适当的时间到期后让状态机解锁互斥
锁
。 这对我来说似乎有点脆弱。如果将来的维护开发人员错误地修改了状态机,互斥
锁
可能不会被释放,
浏览 10
提问于2013-01-18
得票数 3
回答已采纳
1
回答
Wait()和Pulse()之间的区别
说wait“释放对象上的
锁
,并阻塞当前
线程
,直到它重新获得
锁
。”这基本上意味着
锁
切换(释放,给另一个
线程
一个运行的机会,重新获取
锁
)。但这不就是Pulse()要做的吗?与Pulse的唯一细微区别是它会永久地发出信号来获取
锁
吗?
C
#
线程
指南()有一个非常好的类比:因此,对于MSDN描述,这意味着当释放
锁
和阻塞(与等待<em
浏览 4
提问于2010-02-04
得票数 0
1
回答
与多
线程
共享SCTP连接
、
、
我有一个需要在SCTP环境中运行的应用程序,我有一个问题,就是只在多个
线程
之间共享连接以便只接收数据包,我尝试过使用sctp_sendmsg,它甚至没有锁定
线程
(也就是说,
线程
安全吗?)无论如何,回到接收端,是否可以创建多个
线程
并向每个
线程
发送sctp描述符以开始接收消息?我这里需要
锁
吗?没有
锁
可以吗? 我在
linux
中使用
C
。
浏览 0
提问于2012-05-02
得票数 1
3
回答
与
c
++初始化器相关的内存一致性
、
、
、
如果我在一个
线程
中设置变量的值,然后在另一个
线程
中读取它,则使用
锁
保护它,以确保第二个
线程
读取第一个
线程
最近设置的值:lock();unlock();lock();但是,假设我有一个
c
++对象,它在初始化器中设置x的值:theClass theInstance; 然后,我生成了一个使用theInstance的
线程
。是否可以保证新生成的
浏览 4
提问于2015-09-18
得票数 0
1
回答
在尝试mutex_lock时被阻塞的
线程
如何知道
锁
是由另一个
线程
释放的?
、
、
、
在
Linux
中,我有这样一个场景:两个
线程
执行一个临界区,一个
线程
获取
锁
(
线程
A),另一个
线程
(
线程
B)等待
锁
。稍后,threadA释放互斥
锁
。我正在尝试理解如何将threadB移动到运行状态并获取
锁
?threadB(或操作系统)如何知道
锁
是由threadA释放的? 我有一个理论,如果我错了,请纠正。threadB进入等待( TASK_INTERRUPTABLE )状态(在互斥
锁
被
浏览 76
提问于2020-12-30
得票数 0
1
回答
一个正在旋转并试图获得自旋
锁
的
线程
不能被抢占吗?
、
、
、
当
Linux
上的
线程
正在旋转并试图获得自旋
锁
时,这个
线程
不可能被抢占吗?我只想确定一些事情。在“向上”系统上,并且没有中断处理程序将访问这个自旋
锁
。如果正在旋转并试图获得自旋
锁
的
线程
可以被抢占,我认为在这种情况下,spinlock保护的关键部分可以调用sleep,因为保持自旋
锁
的
线程
可以重新调度回CPU。
浏览 5
提问于2015-11-26
得票数 2
1
回答
一个
线程
获取一个信号量,而另一个
线程
释放它的有效用例是什么?
、
Linux
信号量和互斥
锁
之间的区别在于互斥
锁
可以由锁定它的
线程
解锁。但是,一个
线程
锁定和另一个
线程
解锁的用例是什么呢?
浏览 2
提问于2017-06-05
得票数 0
2
回答
pthread_mutex_unlock如何区分
线程
?
、
、
、
、
只有互斥
锁
的所有者才能解锁。但是互斥
锁
如何区分锁定它的
线程
呢?在
Linux
中,
线程
有什么不同的特性吗?
浏览 1
提问于2015-02-10
得票数 0
回答已采纳
3
回答
细粒度锁定
、
、
、
、
假设我们有一个很大的数组,并且有许多
线程
在该数组中的具体索引上操作。两个
线程
不能同时对一个索引进行操作,其中一个
线程
应该等待另一个
线程
完成。还有一个糟糕的问题:如何在
Linux
/
C
/
C
++中对数组的每个索引实现test-and-set
锁
?
浏览 0
提问于2012-01-27
得票数 5
3
回答
多
线程
环境中的变量同步
、
、
这些问题仅限于X86/
LINUX
环境。 lock(); unlock(); printf("%d",a); 一个
线程
读取一个带
锁
的变量,另一个<e
浏览 7
提问于2012-04-23
得票数 0
1
回答
互斥
锁
会在任何时候阻塞所有
线程
吗?
、
、
在
Linux
中,假设我有100个
线程
的代码。这些
线程
中有5个竞争由互斥
锁
保护的共享资源。我知道当临界区实际运行时,如果5个
线程
试图获得
锁
,则只有5个
线程
会停止执行,而其他95个
线程
将正常运行。我的问题是,是否存在其他95个
线程
的执行将暂停或受影响的时间点,即互斥量/内核/什么决定哪些
线程
在互斥量上被阻塞,哪个
线程
应该获得
锁
,以及哪些
线程
应该能够
浏览 5
提问于2013-03-29
得票数 1
回答已采纳
1
回答
需要有关为
线程
同步选择
锁
的帮助
、
、
我有几个修改
线程
和一些读取
线程
,它们都访问全局变量X。我想像这样制定我的同步策略:
linux
pthread库中有没有解决这种情况的方法?非常感谢
浏览 2
提问于2009-06-10
得票数 0
回答已采纳
3
回答
C
++:
线程
之间共享的静态函数成员,能阻止所有
线程
吗?
、
、
我有一个类,它的静态函数定义为使用
C
样式的extern
C
{ static void callback(foo bar) { } }。//静态在标头中定义。从该类实例化了三个对象(每个在单独的p
线程
中),每个对象都有自己的循环(在类构造函数中),可以接收回调。指向函数的指针被传递为:while(1) { loop_function(x); } 因此,每个
线程
具有相同的指向每个
线程</em
浏览 5
提问于2011-01-17
得票数 0
回答已采纳
2
回答
如何在
linux
中使用自旋
锁
?
、
、
、
我是一名计算机科学专业的学生,我有一个任务要求我使用自旋
锁
锁定一个
线程
,并在它的关键部分完成后解锁它。困难是我搜索了很多次,但没有找到任何有用的信息。例如,我试图包括像#include <
linux
/spinlock.h>这样的标题,但是当我使用gcc编译这个
c
程序时,它说找不到这样的头。那么,我应该包括哪些标头,需要调用哪些函数才能使用自旋
锁
?
浏览 4
提问于2016-11-26
得票数 2
3
回答
在并发读取中使用或不使用互斥
锁
、
、
我在
Linux
下用
C
++编程,我用的是pthread库。我正在使用互斥
锁
来保护一些共享变量,但我不确定在这种特定情况下是否有必要使用互斥
锁
。 我有3个
线程
。共享变量是一个字符串(全局变量)。在这种情况下,字符串的值只由一个
线程
修改。在两个
线程
的并发读取中,是否仍然需要使用互斥
锁
来保护共享变量?
浏览 1
提问于2016-11-17
得票数 2
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
分享:C语言编程——LINUX 多线程
Android C++系列:Linux线程(一)概念
详解Linux多线程中的互斥锁、读写锁、自旋锁、条件变量、信号量
Python3与C#并发编程之 线程篇-锁专题
线程深入篇之 GIL专题
热门
标签
更多标签
云服务器
ICP备案
对象存储
实时音视频
即时通信 IM
活动推荐
运营活动
广告
关闭
领券