硬汉嵌入式论坛

 找回密码
 立即注册
查看: 1018|回复: 2
收起左侧

[ThreadX全家桶] threadx在什么时候进行线程切换?

[复制链接]

5

主题

7

回帖

22

积分

新手上路

积分
22
发表于 2024-7-10 17:11:01 | 显示全部楼层 |阅读模式
threadx在什么时候进行线程切换?
如果设置了TX_NO_TIME_SLICE,那么是在tx_thread_sleep()执行的时候切换去执行其他任务吗?


回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
115892
QQ
发表于 2024-7-11 09:03:51 | 显示全部楼层
TX_NO_TIME_SLICE 是同优先级任务时间片设置。不影响向其他优先级任务切换。

然后切换的时间点有很多,可以是自己主动释放,比如调用各种通信组件的延迟等待,又或者这个tx_thread_sleep()。

还可以是被其他高优先级任务抢占,比如一个高优先级任务延迟5ms,滴答定时器统计到时间到了,就会退出中断后,切换到这个高优先级任务。
回复

使用道具 举报

23

主题

1443

回帖

1512

积分

至尊会员

积分
1512
发表于 2024-7-11 09:45:11 | 显示全部楼层
执行正常的任务抢占,这个就是所谓的抢占式调度
代码不规范,亲人两行泪!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2025-5-25 14:09 , Processed in 0.215997 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表