Toggle navigation
首页
问答
文章
积分商城
专家
专区
更多专区...
文档中心
返回主站
搜索
提问
会员
中心
登录
注册
Kernel
RT-Thread 同优先级轮询出现问题
发布于 2015-03-13 10:35:43 浏览:2674
订阅该版
版本:RT-Thread 1.2.0 各位好,我对rt_thread的同一优先级下时间片轮训调度的输出结果有点不解,请帮我分析一下。 过程如下:我创建了两个线程,优先级一样,时间片也一样。 然后循环打印出串口信息: ```static rt_thread_t Thread1; static rt_thread_t Thread2; static void hook(rt_thread_t from,rt_thread_t to) { rt_kprintf(" <%s->%s> ",from->name,to->name); } static void rt_ThreadTest(void *parameter) { while(1) { rt_kprintf("thread 1 put "); // rt_thread_yield(); } } static void rt_ThreadTest2(void *parameter) { while(1) { rt_kprintf("thread 2 put "); // rt_thread_yield(); } } int rt_application_init() { Thread1=rt_thread_create("Thread1", rt_ThreadTest,RT_NULL, 2048,10,5); if(Thread1!=RT_NULL) { rt_thread_startup(Thread1); } else { rt_kprintf("Thread1 create fail! "); } Thread2=rt_thread_create("Thread2", rt_ThreadTest2,RT_NULL, 2048,10,5); if(Thread2!=RT_NULL) { rt_thread_startup(Thread2); } else { rt_kprintf("Thread 2 create fail "); } return 0; }``` 我打开了调度器的调试模式,于是输出如下:    可以看到在第三张图片中,线程2切换到线程1出现了问题,线程一的SP都不对了
查看更多
7
个回答
默认排序
按发布时间排序
aozima
2015-03-13
调网络不抓包,调I2C等时序不上逻辑分析仪,就像电工不用万用表!
每次切换的具体地点不一样,所用的栈深度就不一样。 如果这现象持续发生,并最终溢出才是问题。
KC_CEC
2015-03-13
这家伙很懒,什么也没写!
从上面可以看出:线程1还有符号 1 put没有打印出来 那么当线程2时间片到了,切换回线程1后就应该继续打印这些符号, 但是实际上不是的
aozima
2015-03-13
调网络不抓包,调I2C等时序不上逻辑分析仪,就像电工不用万用表!
rt_kprintf 是非线程安全的,被抢就丢。
vic
2015-12-24
这家伙很懒,什么也没写!
[quote]rt_kprintf 是非线程安全的,被抢就丢。[/quote] 为什么说RTT是非线程安全的?没有明白
pangwei
2015-12-24
这家伙很懒,什么也没写!
rt_kprintf 是非线程安全的。。。。。。。。。。。。
grissiom
2015-12-25
这家伙很懒,什么也没写!
[quote]rt_kprintf 是非线程安全的。。。。。。。。。。。。[/quote] 非线程安全的原因是,如果要线程安全,则它需要被实现成可阻塞的。如果是可阻塞的,ISR中就不能用了……
撰写答案
登录
注册新账号
关注者
0
被浏览
2.7k
关于作者
KC_CEC
这家伙很懒,什么也没写!
提问
1
回答
2
被采纳
0
关注TA
发私信
相关问题
1
cpu使用率分析
2
选择FreeRTOS, 还是RT-Thread。
3
thread heap stack overflow ?
4
rtt消息队列delay问题
5
释放被删除线程的内存地方在哪里啊
6
请教:各线程结束后,释放其中的内存的连续性问题
7
STM32F103中断关于信号量、邮箱问题
8
RTT中的线程栈大小如何控制
9
关于线程由执行态变为挂起态的代码实现,,,
10
rt_malloc(rt_size_t size)内存分配函数最小分配尺寸问题
推荐文章
1
RT-Thread应用项目汇总
2
玩转RT-Thread系列教程
3
机器人操作系统 (ROS2) 和 RT-Thread 通信
4
五分钟玩转RT-Thread新社区
5
国产MCU移植系列教程汇总,欢迎查看!
6
【技术三千问】之《玩转ART-Pi》,看这篇就够了!干货汇总
7
关于STM32H7开发板上使用SDIO接口驱动SD卡挂载文件系统的问题总结
8
STM32的“GPU”——DMA2D实例详解
9
RT-Thread隐藏的宝藏之completion
10
【ART-PI】RT-Thread 开启RTC 与 Alarm组件
最新文章
1
如何用Ubuntu qemu跑zephyr_polling的蓝牙
2
分享一种很简单的不阻塞TCP发送方法
3
stm32c86使用串口3时无法正常读到中断的数据
4
如何用ART-PI跑zephyr_polling的蓝牙
5
掌上单片机实验室 – 基于 RTT 框架的第一个应用
热门标签
RT-Thread Studio
串口
LWIP
Env
SPI
AT
FinSH
Bootloader
CAN总线
ART-Pi
Hardfault
文件系统
USB
DMA
RT-Thread
线程
SCons
RT-Thread Nano
stm32
MQTT
ESP8266
ota
UART
RTC
freemodbus
rtthread
rt-smart
packages_软件包
I2C
WIZnet_W5500
flash
cubemx
FAL
定时器
BSP
AB32VG1
PWM
ADC
SDIO
msh
socket
LVGL
keil
Debug
C++_cpp
中断
编译报错
SFUD
SMP
MicroPython
本月问答贡献
出出啊
1431
个答案
317
次被采纳
小小李sunny
1342
个答案
267
次被采纳
crystal266
505
个答案
149
次被采纳
whj467467222
1212
个答案
142
次被采纳
张世争
590
个答案
135
次被采纳
本月文章贡献
出出啊
3
篇文章
5
次点赞
小小李sunny
1
篇文章
1
次点赞
crystal266
1
篇文章
3
次点赞
whj467467222
2
篇文章
4
次点赞
张世争
6
篇文章
14
次点赞
回到
顶部
发布
问题
分享
好友
手机
浏览
扫码手机浏览
投诉
建议
回到
底部