腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
2
回答
在
linux
上,在
线程
之间进行通信的最挑剔的方法是什么?
、
、
我有一个p
线程
应用程序,我目前使用常规
linux
管道来通信,并向不同的
线程
发送消息。它的工作很好,并没有真的坏,但我有一种唠叨的感觉,它可以改进。我需要传递少量的数据,作为一个带几个参数的独立的optcode。
线程
条件
变量
允许我在
线程
之间传递数据吗?-Andres
浏览 0
提问于2012-12-10
得票数 1
回答已采纳
1
回答
条件
变量
的误解
、
、
、
、
假设我有一棵树,并且在树的每个节点中都有一个
条件
变量
。现在删除正在树中发生,我想检查等待的那些是否在等待删除,所以我想用信号通知一个节点,我如何知道用信号通知哪个
线程
,我必须跟踪插入中最初的所有
条件
变量
吗?在我的delete函数中,当我发出信号时,我不知道
线程
等待的
条件
变量
是什么,因为每个节点都有一个
条件
变量
,并且可能有多个节点,每个节点都有一个
条件
变量
等待。但是除了5等待,还有1
浏览 3
提问于2013-04-13
得票数 0
1
回答
线程
之间的延迟测试:
Linux
裸机与虚拟机上的QNX
、
、
、
测试场景: 10个
线程
运行,每个
线程
每30ms左右向随机选择的接收
线程
发送一条消息-消息速率确实非常低;消息机制是使用
条件
变量
实现的,每个
线程
都有自己的专用rx prod-consumer队列和自己的
条件
变量
和互斥量我测量消息被构造/发送到接收
线程
获得消息之间的时间。每个
线程
的平均值和std_dev最小最大值都会被捕获。 结果出人意料地有利于QNX (尽管它运行在VM上)。10us vs 40us。对于<e
浏览 7
提问于2020-04-15
得票数 0
1
回答
如何在没有
条件
变量
的情况下阻止
线程
中的操作,在
Linux
中在信号上恢复操作?
、
我正在尝试编写不使用pthread_cond
变量
的错误代码。在
条件
检查中,如果
条件
失败,它将永远等待/阻止。
线程
B应该发出一个信号,以获得
线程
A解块。我不使用在
Linux
中用于块和取消块的API。我想演示
条件
变量
的好处。但是,我想首先编写一个在
条件
下阻塞的代码,它应该通过信号解除阻塞。在这篇文章中,我将展示一个信号是如何丢失的,并且竞争
条件
occurs.Please帮助我了解了API的使用情况。
浏览 3
提问于2014-01-05
得票数 0
回答已采纳
1
回答
挂起和恢复
线程
、
、
、
、
有没有一种方法可以暂时暂停和恢复整个
线程
组,而不使用
条件
变量
或
线程
中的其他同步原语?pthread_kill会影响整个进程,所以它不能用来挂起
线程
,但是在
Linux
/Windows/Darwin中有没有针对这个的低级系统调用呢? 原因是应该有一个在不同
线程
上运行自身的诊断模块。它应该定期冻结整个多
线程
程序,然后读出其他
线程
的一些(原子)
变量
。
浏览 27
提问于2016-08-27
得票数 1
2
回答
多
线程
在第三个
线程
等待读取时定期更新全局
变量
、
、
、
、
我让两个
线程
A,B定期更新两个全局传感器读取
变量
,它们执行相同的例程。第三个
线程
C将在这些值被更新时立即对它们进行一些计算。我设置了一些
条件
变量
,当A和B都更新了全局
变量
时,C会立即读取。我担心
线程
C错过了一些传感器读数,因为它使用循环的轮询是在新的A,B更新之后安排的。我不确定我的担心是不是必要的,因为我是pthread的新手。我的开发环境是嵌入式
linux
板,目前正在学习pthread。还有比为每个全局
变量
设置两个
条件</
浏览 0
提问于2012-04-18
得票数 4
3
回答
条件
变量
的成本是多少?
、
、
、
、
如果一个
线程
正在等待一个
条件
变量
,那么唤醒这个
线程
的相关开销是多少?同样,与等待
条件
变量
相关的成本是多少?我感兴趣的是粗略的量化和成本的来源。在某种程度上,答案是“视情况而定”,我主要关心的是x86/x64上的Windows和
Linux
的最新版本。 编辑:由于涉及内核调用,内核调用比常规函数调用的开销高多少?
浏览 1
提问于2011-04-21
得票数 4
3
回答
如何在POSIX
线程
之间发出缓冲区已满状态的信号
、
、
、
我有两个
线程
,主
线程
'A‘负责多个进程之间的消息处理。当
线程
A收到缓冲区已满消息时,它应该通知
线程
B,并传递一个指向缓冲区的指针,然后
线程
B将处理该缓冲区。当
线程
B结束时,它应该通知
线程
A它已经结束了。谢谢
浏览 1
提问于2010-04-20
得票数 1
1
回答
如何在C中创建
线程
的被动等待FIFO?
、
、
、
、
我正在试图找出一种方法,将一些
线程
置于被动等待模式,并在它们到达屏障时将它们唤醒。我有一个固定数量的
线程
应该到达。我想实现一个系统,它将释放
线程
的顺序达到了同步的障碍,就像FIFO一样。有没有人有能帮助我的想法或建议? 非常感谢:)
浏览 3
提问于2017-11-30
得票数 0
2
回答
sem_getvalue()在POSIX中的语义
、
、
、
、
我需要在代码中的某个点使用PThreads.解决同步问题,一个
线程
需要知道一个信号量上阻塞的
线程
数(如sempahore.h中所定义的)。当我看一看sem_getvalue(sem_t *s, int *sval)的手册页时,它指出返回值sval在
Linux
中是0,但根据POSIX可能有其他语义,即sval的绝对值被设置为信号量s上阻塞的
线程
数因此,我正在寻找一个
Linux
编译选项,以使这些替代语义成为可能。 我试图通过跟踪一个整数
变量
来模拟某个信号量上阻塞的
线程
数量,
浏览 2
提问于2019-05-12
得票数 0
2
回答
线程
开销性能
、
、
、
、
在
Linux
shell中使用
线程
进行C编程时,我试图减少
线程
开销,从根本上降低CPU时间(并使其更高效)。我知道
线程
在开始之前需要多长时间才能完成作业 当有一个
线程
在做这项工作时,其他
线程
必须等待。他们检查是否可以完成这项工作的方式是检查是否满足
条件
变量
。对于等待
线程</
浏览 5
提问于2013-02-24
得票数 2
2
回答
nptl SIGCONT与
线程
调度
、
、
、
、
我正在尝试移植一个依赖SIGCONT来停止应用程序的某些
线程
的代码。对于目前的
linux
nptl实现,在2.6.x内核中似乎不能依赖于此。我正在尝试设计一种方法来阻止其他
线程
。目前我只能考虑互斥和
条件
变量
。如有任何提示,欢迎光临。
浏览 0
提问于2010-04-19
得票数 2
1
回答
未使用的p
线程
互斥
变量
或
条件
变量
分配哪些资源?
、
、
、
、
假设我有一个互斥/
条件
变量
。我初始化(p
线程
_mutex_init/p
线程
_cond_init),但从不使用它们(没有锁操作,没有信号/等待)。(我对
linux
和OSX在这方面的行为很感兴趣)
浏览 3
提问于2017-10-03
得票数 1
回答已采纳
4
回答
在
Linux
上等待多个
条件
变量
而没有不必要的睡眠?
、
、
、
、
我正在编写一个延迟敏感应用程序,它实际上希望同时等待多个
条件
变量
。我以前读过几种在
Linux
上获得这个功能的方法(显然这是Windows上内置的),但它们似乎都不适合我的应用程序。我所知道的方法是: 使用时间等待循环遍历多个
条件
变量
。对于#1,你必须等待虚拟
线程
醒来,然后给真正的
线程
浏览 19
提问于2010-05-17
得票数 28
回答已采纳
1
回答
Linux
,pthreads -发送停止
条件
、
、
我正在
Linux
下使用phtread和C编写一个应用程序。主函数启动一串
线程
(最多20个)。然后,在某种
条件
下,我需要同时停止所有
线程
。每个
线程
都在某个
条件
循环下运行,如:那么,最好的方法是什么?我可以使用某种状态作为全局
变量
,并为它使用互斥。每次
浏览 1
提问于2012-08-03
得票数 1
回答已采纳
1
回答
第二个
线程
不会从cond_wait中醒来
、
、
、
因此,我们有一个打印机
线程
和当前两个
线程
来计算下一个要打印出来的新一代单元格。由于某种原因,只有一个
线程
在pthread_cond_wait() 上醒来。这就是我们的打印机
线程
所做的://pthread_mutex_unlock(&(f
浏览 3
提问于2016-06-25
得票数 0
回答已采纳
1
回答
关于pthread_cond_wait?
、
、
、
pthread_cond_wait( &frame->cv, &frame->mutex );}多个
线程
可以调用q265_frame_cond_wait请求帧具有所需的i_lines_completed,而只有一个
线程
调用q265_frame_cond_broadcast来广播i_lines_completed。问题是:当某个
浏览 1
提问于2016-08-31
得票数 4
2
回答
什么时候在
linux
内核中使用内核
线程
与工作队列
、
有许多方法可以在
linux
内核中调度工作:计时器、微
线程
、工作队列和内核
线程
。什么时候使用一种与另一种有什么指导原则?有一些显而易见的因素:计时器函数和微
线程
不能休眠,因此它们不能等待互斥锁、
条件
变量
等。哪些是首选的机制?
浏览 0
提问于2010-01-27
得票数 34
回答已采纳
1
回答
在新
linux
内核中,上下文切换要慢得多。
不幸的是,运行已成为可运行
线程
的延迟似乎已从2.6内核显著增加到3.2内核。事实上,我们得到的延迟数是难以相信的。 让我更具体地谈谈这次考试。我们有一个有两个
线程
的程序。第一个
线程
获取当前时间(使用RDTSC以刻度单位表示),然后每秒钟发送一次
条件
变量
信号。第二个
线程
等待
条件
变量
,并在发出信号时唤醒它。然后获取当前时间(使用RDTSC以刻度单位表示)。计算第二个
线程
中的时间与第一个
线程
中的时间之间的差异,并在控制台上
浏览 0
提问于2012-08-24
得票数 4
2
回答
使用信号侦听器
线程
-如何停止它?
、
、
、
signaller
线程
使用sigwait()侦听信号。当runflag设置为false时,程序终止。但是,当这种情况发生时,signaller
线程
仍然会在sigwait被阻塞。我不认为我可以使用
条件
变量
,因为sigwait无法连接到
条件
变量
中。有没有其他的解决方案,最好不只是
Linux
? 编辑1:或者,有没有sigwait的可中断版本?
浏览 21
提问于2021-09-15
得票数 0
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
Linux系统编程 条件变量
详解Linux多线程中的互斥锁、读写锁、自旋锁、条件变量、信号量
线程变量:ThreadLocal
linux 环境变量
linux怎么设置环境变量
热门
标签
更多标签
云服务器
ICP备案
对象存储
腾讯会议
实时音视频
活动推荐
运营活动
广告
关闭
领券