2019-07-20 22:33发布
xsx127 发表于 2016-4-30 16:21 不使用全局变量,不利于模块化 而且我发送的消息不是一条啊,根据程序运行状况发送数目和内容都不同,现 ...
最多设置5个标签!
既然任务间只是传递一个指针,那么用一个长度为4的队列不就好了,至于队列深度是多少也不是大问题了,毕竟队列长度只有4,就算深度是100,那么也就耗费400字节的队列单元。
freertos的内存管理方案我只研究过heap_2和heap_4,指点就不敢了,至于内存管理的使用都大同小异,需要用到时申请内存,使用完后释放内存。heap_2采用的是最适合空闲块的机制,但不具备碎片回收功能,实际项目测试过稳定性一般,尤其是多个任务申请的内存大小不一样时尤其容易出现碎片,这是heap_2的一个致命性缺陷,《freertos中文使用教程》里面有对heap_2的安全使用作详细说明,有兴趣可以看看。至于heap_4,具有内存碎片回收功能,但不具备heap_2的最适合内存块分配功能,目前公司的项目都采用这套方案,稳定性十分强,建议使用这套方案。至于heap_5听说跟heap_4是一样的,只不过是内外部定义内存空间的区别罢了
一周热门 更多>