学前班
最后登录1970-1-1
在线时间 小时
注册时间2018-11-1
|
楼主 |
发表于 2018-11-2 19:34:42
|
显示全部楼层
我把线程栈放小,结果一开始不会报错了,但是一使用了那个计数信号量就报错了,详细log与“计数信号量_静态内存创建线程”标题的图片一样。
还有一个问题是,如果我开两个线程,一个send 一个receive 一开始就会报错,详细Log与“计数信号量报错_动态内存创建线程”的图片一样。
下面是创建的两个线程,和书本里一样
receive_thread = /*线程控制块指针*/
rt_thread_create("receive", /*线程名字*/
receive_thread_entry, /*线程入口函数*/
RT_NULL, /*线程入口函数参数*/
128, /*线程栈大小*/
3, /*线程的优先级*/
20); /*线程栈时间片*/
if(receive_thread != RT_NULL)
rt_thread_startup(receive_thread); /*启动线程,开启调度*/
else
return -1;
send_thread = /*线程控制块指针*/
rt_thread_create("send", /*线程名字*/
send_thread_entry, /*线程入口函数*/
RT_NULL, /*线程入口函数参数*/
128, /*线程栈大小*/
2, /*线程的优先级*/
20); /*线程栈时间片*/
if(send_thread != RT_NULL)
rt_thread_startup(send_thread); /*启动线程,开启调度*/
else
return -1;
|
|