ipc使用文档中,说messageQ_reader可以调用messageQ_free,对获得的消息进行释放,但是我现在用这种机制,DSP向ARM发送消息,在共享区申请堆heap,给消息分配大小,把消息发送出去,用到的API函数有messageQ_registerheap,messageQ-_alloc,messageQ_put,ARM读DSP发来的消息,用到的APi函数有messageQ-_get,根据文档的话,那么ARM得到消息后,就应该可以使用messageQ_free对消息进行释放,但是调试的时候arm出现的错误如下, "Heap is not registered with MessageQ module!");
我想问问 我这个出现的问题是什么?
根据syslink的messageQ例程知道,ARM侧申请堆,用alloc分配消息大小,用put发给DSP,用get等待DSP上送的消息,然后通过free释放msg,从这可知申请堆的那侧,才能用free对msg进行释放。
请问我理解的对吗?还是怎样呢?
sophia wei1:
请问TI的技术支持 ,能回应下吗?如何实现在reader用free释放从写者得到的消息,堆是在写着创建,然后给分配消息大小,用put发送,读者用get得到消息,那读者能不能用free 释放呢?如果能,应该怎样释放呢,请给我一个答复吧,谢谢了!
TI中文支持网


