[RTT例程练习] 1.5 优先级相同线程轮转调度
来源:互联网 发布:淘宝助理没有手机版吗 编辑:程序博客网 时间:2024/06/05 20:28
之前说过,相同优先级的线程,在自己的时间片用光之后,会被剥夺调度器,让给同优先级的其他线程。
程序:
#include <rtthread.h>static struct rt_thread thread1;static struct rt_thread thread2;static char thread1_stack[512];static char thread2_stack[512];//static rt_uint32_t t1_count = 0;//static rt_uint32_t t2_count = 0;static void thread1_entry(void* parameter){ rt_uint8_t i; for(i = 0; i < 6; i ++) { rt_kprintf("Thread11111111111111111111111111:\n\r"); rt_kprintf("This is \n"); rt_kprintf("a\n"); rt_kprintf("demo\n"); rt_thread_delay(10); }}static void thread2_entry(void* parameter){ rt_uint8_t j; for(j = 0; j <60; j ++) { rt_kprintf("Thread2:\n\r"); rt_kprintf("This is \n"); rt_kprintf("a\n"); rt_kprintf("demo\n"); }}int rt_application_init(){ rt_err_t result; result = rt_thread_init(&thread1, "t1", thread1_entry, RT_NULL, &thread1_stack[0], sizeof(thread1_stack), 6, 10); if (result == RT_EOK) rt_thread_startup(&thread1); result = rt_thread_init(&thread2, "t2", thread2_entry, RT_NULL, &thread2_stack[0], sizeof(thread2_stack), 6, 5); if (result == RT_EOK) rt_thread_startup(&thread2); return result;}/*@}*/
输出结果:
Thread1:This isademoThread2:This isademoThread2:This isademoThread2:This isademoThread2:This isademoThread2:This isademoThread2:This isThread11111111111111111111111111:This isademoademoThread2:This isademoThread2:This isademoThread2:This isademoThread2:This isaDemo
可以看到thread2 的时间片用光,插入了thread1 的打印内容。
- [RTT例程练习] 1.5 优先级相同线程轮转调度
- [RTT例程练习] 1.4 线程优先级抢占
- [RTT例程练习] 1.6 线程优先级反转原理
- [RTT例程练习] 1.7 优先级翻转之优先级继承
- [RTT例程练习] 1.3 线程让出
- [RTT例程练习] 1.1 动态线程创建,删除
- [RTT例程练习] 1.2 静态线程除初始化与脱离
- [RTT例程练习] 总目录
- [RTT例程练习] 2.1 问题引入 线程抢占导致的临界区问题
- [RTT例程练习] 2.6 互斥锁 mutex
- [RTT例程练习] 2.7 邮箱 mailbox
- [RTT例程练习] 2.9 事件机制event
- [RTT例程练习] 4.1 定时器基本使用
- [RTT例程练习] 4.2 动态定时器
- [RTT例程练习] 4.4 定时器控制
- 优先级和时间片轮转法调度
- java例程练习(多线程[线程的优先级等等])
- 轮转调度算法和动态优先级调度算法
- 相亲时候遇到的92年妹子,老衲想下手了
- 编译BOOST库(Visual Studio 2010/GCC)
- easyUI属性汇总
- 运行shell脚本
- Read-only file system
- [RTT例程练习] 1.5 优先级相同线程轮转调度
- 银融金贷《资本运营》精华班
- 依赖 关联 聚合 组合 说明最清晰的一文
- 一步一学Linux与Windows 共享文件Samba
- Python正则表达式指南
- 关闭显示器自动休眠
- MyEclipse 快捷键
- linux可执行格式
- linux查看内核、cpu、mem、gcc、libc信息的命令