社区
C语言
帖子详情
linux C下多线程占用资源太高怎么办
static163
2010-06-28 09:13:48
一个主程序中启动了四五个线程分别做不同的事,而当这几个线程中都在空循环发现占用的CPU还是太高,99%,这个问题怎么解决,比如调用个什么东西就能让它在空闲的时候尽量不占资源?
...全文
265
7
打赏
收藏
linux C下多线程占用资源太高怎么办
一个主程序中启动了四五个线程分别做不同的事,而当这几个线程中都在空循环发现占用的CPU还是太高,99%,这个问题怎么解决,比如调用个什么东西就能让它在空闲的时候尽量不占资源?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
huatian008
2010-06-29
打赏
举报
回复
在循环任务里面如果某些条件不成立那么就进入等待状态,并将自己添加到等待队列,当条件在其他任务里面设置以后再唤醒在等待此条件的某一个任务
yanran_hill
2010-06-28
打赏
举报
回复
尽量使用消息驱动,不要pool轮循,如果事件能够用异步方法方法完成,就不要使用同步方式
do_fork
2010-06-28
打赏
举报
回复
用空循环做长时间等待是极其sb的事情,同步的手段有那么多种,随便选一个都比这个强
static163
2010-06-28
打赏
举报
回复
嗯,各位说的是,我也觉得应该弄个什么办法,不过感觉SLEEP不太好,好多东西需要及时处理。
我再学习一下别的方法
select,poll
sigsuspend
yzx714
2010-06-28
打赏
举报
回复
sigsuspend
自己man一下吧
wdy0725
2010-06-28
打赏
举报
回复
空循环? 你是不停的while 或者for吗?这个当然很占资源的。如果想空闲时不占资源,最好用中断的形式,如select,poll.
DontKissBossAss
2010-06-28
打赏
举报
回复
sleep
Linux
C
多线程
关于pthread_exit退出状态与
资源
释放
在
Linux
C
多线程
编程中,线程结束可通过函数返回或pthread_exit。joinable线程
资源
在pthread_join后释放,unjoinable线程则在结束时自动释放。pthread_exit仅结束当前线程,不干扰其他线程,而exit或return会终止所有线程。pthread_join用于阻塞等待线程结束,可获取返回值,但一个线程只能被一个线程等待。
Linux
c
多线程
编程的4个实例
本文通过四个实例详细介绍了
Linux
环境下C语言的
多线程
编程,包括线程的创建、退出、线程属性设置、互斥锁和信号量的使用。通过示例展示了如何在
多线程
中管理共享
资源
,确保并发访问的安全性。
【
Linux
教程】
Linux
中用C语言
多线程
编程之pthread_join()函数
本文介绍了在
Linux
中使用C语言进行
多线程
编程时,如何利用pthread_join()函数实现线程间的同步和连接。通过讲解pthread_join()的函数用法、返回值以及在
多线程
程序中的作用,阐述了该函数在确保线程执行和
资源
回收上的重要性。同时,文中还提及了线程的创建与进程的关系,以及如何在代码中正确使用pthread_join()来避免线程未执行就结束的问题。
Linux
C语言 21-
多线程
本文围绕
Linux
C语言中的线程展开,介绍了线程概念,它是C库概念,是操作系统运算调度最小单位,同一进程
多线程
共享
资源
。还阐述了POSIX线程标准,以及时间片分配机制。此外,提及线程优缺点、相关库函数及使用示例,最后介绍了线程池。
Linux
C语言
多线程
通信
该博客介绍了如何在
Linux
环境下使用C语言实现
多线程
同步,特别是在一个
资源
有限(如只能同时容纳2个水果的盘子)的情况下,确保儿子(吃香蕉)和女儿(吃苹果)能正确交替获取并消耗水果的过程。文章包含实现功能的描述、源代码展示以及最终的运行结果。
C语言
70,038
社区成员
243,245
社区内容
发帖
与我相关
我的任务
C语言
C语言相关问题讨论
复制链接
扫一扫
分享
社区描述
C语言相关问题讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章