构建任务和连接指数Conidx

3个帖子/ 0新
最后一篇
布莱恩
离线
最后一次露面:6年4个月前
专家 掌握
加入:2014-10-16 18:10
构建任务和连接指数Conidx

在创建消息时,我会被Ke_Build_ID(Task_ *,conidx)与task_ *混淆。主要是,何时使用它,当不使用它时。我认为它是一种创建一个实例的方法,或者我们是否正在执行c ++一个类的实例。显然,在调用连接时,我无法使用它,因为我还没有conidx。直到有一个连接指示,未定义此参数。我假设这意味着一个人不能同时尝试连接到两个设备。

因此,我的假设是在连接之后,所有消息创建都必须在ConIDX上用宏将ConIDX粘附到目标任务。这将是所有服务发现和相关的呼叫,配对和绑定程序,写作和读取特征/描述符,以及断开连接(也许有更多)。这是一个正确的假设吗?

py_dialog.
离线
最后一次露面:3年1周前
职员
加入:2014-08-25 09:59
嗨Brian,

嗨Brian,

task_taskname定义了任务的ID,但这与任何链接无关。然后宏Ke_Build_ID将使用特定链接绑定任务。

问候!
PY

布莱恩
离线
最后一次露面:6年4个月前
专家 掌握
加入:2014-10-16 18:10
好的,那我纠正了这一点

好的,那么我纠正了一旦连接,我应该使用ke_build_id来调用连接的设备上的服务发现,配对,绑定,读/写入,断开连接等;

例如这一点
struct gapc_bond_cmd * bond_cmd = ke_msg_alloc(gapc_bond_cmd,ke_build_id(task_gapc,device-> conidx),task_app,gapc_bond_cmd);

而不是这样
struct gapc_bond_cmd * bond_cmd = ke_msg_alloc(gapc_bond_cmd,task_gapc,task_app,gapc_bond_cmd);

这两项工作,但我认为这是因为我只能用一个设备测试,如果我有多个设备连接,则第一个将工作,第二个将失败。