社区
Linux/Unix社区
帖子详情
Linux多线程编程,有时会出现进程进入休眠S状态
唐寂言
2017-11-07 10:35:24
请教大神们一个问题,本人编写了一个Linux多线程程序,多线程分别处理不同数据,但有时偶然会出现所有线程突然不处理数据的情况,top查看发现进程进入休眠S状态,但主线程定时器还活着,不太清楚哪里出了问题,希望大神给个思路,谢谢了!
...全文
386
回复
打赏
收藏
Linux多线程编程,有时会出现进程进入休眠S状态
请教大神们一个问题,本人编写了一个Linux多线程程序,多线程分别处理不同数据,但有时偶然会出现所有线程突然不处理数据的情况,top查看发现进程进入休眠S状态,但主线程定时器还活着,不太清楚哪里出了问题,希望大神给个思路,谢谢了!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
【
linux
】
进程
和线程的几种
状态
及
状态
切换
进程
和线程的
状态
linux
进程
状态
都是s,ps命令输出
进程
状态
S+的含义解析
最近发现一个问题,ps命令输出里面
进程
状态
为S+的含义,网上好多文章都说是表明
进程
“位于在后台
进程
组”。例如下面这个ps命令输出说明:D 不可中断 Uninterruptible sleep (usually IO)R 正在运行,或在队列中的
进程
S 处于
休眠
状态
T 停止或被追踪Z 僵尸
进程
W
进入
内存交换(从内核2.6开始无效)X 死掉的
进程
< 高优先级N 低优先级L 有些页被锁进内存s ...
Linux
中为什么
进程
是
休眠
的,但是还是处理了数据
休眠
状态
的
进程
不代表它完全停止工作,它仍然可以在合适的条件下恢复并继续处理数据。并不意味着
进程
完全停止工作,它通常指的是
进程
正在等待某些事件(例如 I/O 操作、系统调用或信号),并在这些事件发生时
会
继续执行。这通常是正常的,
进程
不
会
一直占用 CPU,只有在需要 CPU 或事件发生时才
会
被唤醒。
状态
,并且仍然在处理数据,可能是它在等待某个事件的触发,并通过某些机制(如
多线程
、异步 I/O 或信号)继续进行工作。即使
进程
处于
休眠
状态
,它仍然可以继续处理数据。在
Linux
中,
进程
的
状态
可以是多种多样的,
linux
进程
状态
符号的含义
D 不可中断 Uninterruptible sleep (usually IO) R 正在运行,或在队列中的
进程
S 处于
休眠
状态
T 停止或被追踪 Z 僵尸
进程
W
进入
内存交换(从内核2.6开始无效) X 死掉的
进程
< 高优先级 N 低优先级 L 有些页被锁进内存 s 包含子
进程
+ 位于后台的
进程
组; l
多线程
,克隆线程 multi-threaded (using CLONE_THREAD, like.
linux
进程
几种
状态
,
linux
进程
状态
linux
系统最常用的命令莫过于ps,经常要用其查看
linux
的
进程
和线程情况。此文我们着重来看
进程
。
进程
又分为以下几种
状态
:1. 运行(正在运行或在运行队列中等待)2. 中断(
休眠
中, 受阻, 在等待某个条件的形成或接受到信号)3. 不可中断(收到信号不唤醒和不可运行,
进程
必须等待直到有中断发生)4. 僵死(
进程
已终止, 但
进程
描述符存在, 直到父
进程
调用wait4()系统调用后释放)5. ...
Linux/Unix社区
18,828
社区成员
11,491
社区内容
发帖
与我相关
我的任务
Linux/Unix社区
Linux/Unix社区 专题技术讨论区
复制链接
扫一扫
分享
社区描述
Linux/Unix社区 专题技术讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章