当前位置:   article > 正文

线程状态 - ts_ts 线程dengdai

ts 线程dengdai

SylixOS 中查看线程此时所处的状态可通过 Shell 命令 ts 查看“STAT”列,如下,线程“t_test”处于“SLP”状态。
扩展:“ts” 命令线程打印信息含义为:线程名、ID 号、所属进程 ID、优先级、状态、线程锁、线程安全模式标志、等待计数器、缺页中断
线程状态
查看SylixOS中该部分代码描述:

        if (tcbdesc.TCBD_usStatus & LW_THREAD_STATUS_SEM) {             /*  等待信号量                  */
            pcPendType = "SEM";
        
        } else if (tcbdesc.TCBD_usStatus & LW_THREAD_STATUS_MSGQUEUE) { /*  等待消息队列                */
            pcPendType = "MSGQ";
        
        } else if (tcbdesc.TCBD_usStatus & LW_THREAD_STATUS_JOIN) {     /*  等待其他线程                */
            pcPendType = "JOIN";
        
        } else if (tcbdesc.TCBD_usStatus & LW_THREAD_STATUS_SUSPEND) {  /*  挂起                        */
            pcPendType = "SUSP";
        
        } else if (tcbdesc.TCBD_usStatus & LW_THREAD_STATUS_EVENTSET) { /*  等待事件组                  */
            pcPendType = "ENTS";
        
        } else if (tcbdesc.TCBD_usStatus & LW_THREAD_STATUS_SIGNAL) {   /*  等待信号                    */
            pcPendType = "WSIG";
        
        } else if (tcbdesc.TCBD_usStatus & LW_THREAD_STATUS_INIT) {     /*  初始化中                    */
            pcPendType = "INIT";
        
        } else if (tcbdesc.TCBD_usStatus & LW_THREAD_STATUS_WDEATH) {   /*  僵死状态                    */
            pcPendType = "WDEA";
        
        } else if (tcbdesc.TCBD_usStatus & LW_THREAD_STATUS_DELAY) {    /*  睡眠                        */
            pcPendType = "SLP";
            
        } else if (tcbdesc.TCBD_usStatus & LW_THREAD_STATUS_STOP) {     /*  停止                        */
            pcPendType = "STOP";
            
        } else if (tcbdesc.TCBD_usStatus & LW_THREAD_STATUS_WSTAT) {    /*  等待状态转换                */
            pcPendType = "WSTA";
        
        } else {
            pcPendType = "RDY";                                         /*  就绪态                      */
        }```
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36

根据代码中获取tcb后信息的判断可知 “ts” 命令中 “STAT” 打印字符串表示的信息为:

STAT状态
SEM等待信号量
MSGQ等待消息队列
JOIN等待其他线程
SUSP挂起
ENTS等待事件组
WSIG等待信号
INIT初始化中
WDEA僵死状态
SLP睡眠
STOP停止
WSTA等待状态转换
RDY就绪态
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/714548
推荐阅读
相关标签
  

闽ICP备14008679号