线程的执行问题

发表在 Kernel6 天前 [复制链接] 3 50

比如有3个线程分布如下
7 s  q# f3 N4 }* K6 P1 S6 n线程     线程优先级     执行时间ms        堵塞时间ms, |/ t& j0 t: s1 N/ Y! W
1                1                     10                      1! `# [) Y  f. W0 ~$ u% ?, ]
2                2                      5                       1
0 s  s% {6 \. m/ z& n/ B7 g' f3                3                      3                       1
4 O. i  r4 ^3 G4 g6 `6 t+ @% U( i0 \如果这样的话,是不是线程3永远不会被执行到?
. p- V) G% B& h; J
0 H  V5 n# R7 V
6 I# C% o' m7 U' y6 d! J
使用道具 举报 显示全部楼层 回复
最新评论 | 正序浏览
显示全部楼层 |楼层直达:
发表于 5 天前 | 显示全部楼层
不会啊,当你线程1 和线程2 都切走的时候,线程3 就可以得到执行了
使用道具 举报 回复
发表于 5 天前 | 显示全部楼层
线程 3 应该不会被执行到。
3 J1 b2 I5 U3 l8 ]+ S! l; U2 u( \3 v9 b) d* c
线程 1 执行到第五次时,让出 CPU,线程 2 运行 1 ms 的时间。此时线程 2 的任务执行完,线程 2 让出 CPU 。
- D) l! s8 m8 w2 k1 O7 Z! I* b线程 2 让出 CPU 后,刚好线程 1 阻塞 1ms 的时间到了,切换至线程 1 继续运行。
使用道具 举报 回复
发表于 5 天前 | 显示全部楼层
解决办法是提高CPU主频,缩短执行时间。
使用道具 举报 回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|小黑屋|RT-Thread开发者社区 ( 沪ICP备13014002号-1

有害信息举报电话:021-31165890 手机:18930558079

© 2006-2019 上海睿赛德电子科技有限公司

Powered by RT-Thread

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