This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

在低功耗蓝牙协议栈1.3.2的每个任务事件处理函数第一个语句怎么都是 VOID task_id;

注释是// OSAL required parameter that isn't used in this function

在这里你定义后不用,干嘛呢?我不解。编译的时候优化不会被和谐掉吗?

又或者有更牛逼的任务。求高人指点。

  • 请问您看的是哪个例程?

    在SimpleBLEPeripheral貌似没有您说的没有使用的task_id

    另外1.3.2并不是最新的协议栈,建议您下载使用1.4.0的协议栈

     

  • 因为在调用系统事件api的时候,已经将自身任务id注册到系统了,当接收到对应的消息或事件,系统会查找已经注册的任务id,然后发送事件消息给这个任务。 根据契约式编程规范,参数检查可以由调用者或者被调用者检查,ti的协议栈是由调用者来保证调用参数的正确性,所以被调用者就无需做额外参数检查 作为被调用者(也就是用户任务),不用检查task_id,为了避免编译器警告,所以在参数前加void,表示舍弃这个参数 希望能帮到你