RT-Thread Nano线程时间片轮转调度示例问题

发布于 2020-04-02 14:32:24
目前在跟着论坛组织的RT-Thread Nano学习营进行内核移植学习,课程中老师讲到了官网上的线程时间片轮转调度示例。我把这个例子拷贝到我的工程中,运行后没有看到论坛介绍的时间片轮转调度效果,而是始终先执行完线程1在执行线程2,请问哪位知道什么情况?



查看更多

关注者
0
被浏览
282
4 个回答
bast_xrr
bast_xrr 2020-04-03
我把源文件发上来,文件就是其中的timeslice_sample.c
下载附件[STM32_Proj.rar]
autodevice
autodevice 2020-07-23

我跟你遇到同样的问题,请问你解决了吗

GARFIELD
GARFIELD 2020-09-07

遇到了跟你一样的问题。问题出在shell优先级 和 线程1、2的优先级上。
原因分析:
当线程1优先级比shell优先级高时,调用

rt_thread_startup(tid1);

启动线程1会一直抢占。当线程1运行结束后,才会返回shell中创建线程2。
解决办法:将shell优先级和线程1、2设置为一样。

撰写答案

请登录后再发布答案,点击登录

发布
问题

分享
好友