---
title: acltdtBindQueueRoutes
description: "当应用存在数据一对多分发时，通过本接口绑定队列间数据转发路由关系。同步接口。"
url: https://www.hiascend.com/document/detail/zh/Atlas200IDKA2DeveloperKit/latest/Application%20Development%20Guide/aadgc/aclcppdevg_03_1634.html
sourcePath: /source/zh/Atlas200IDKA2DeveloperKit/23.0.RC2/Application Development Guide/aadgc/aclcppdevg_03_1634.html
indexId: 98ae14929f6a1850ebcce5db5a025ee7fe8a2576df65f80a903b181e75c94b9f105
---
# acltdtBindQueueRoutes

#### 函数功能

当应用存在数据一对多分发时，通过本接口绑定队列间数据转发路由关系。同步接口。


如下图所示，可以建立两条路由关系Q1->Q2, Q1->Q3。


#### 约束说明

- 数据一对多分发时，传递的共享Buffer数据是无锁的，消费者不能对数据进行inplace操作，如上图所示消费者1对共享数据的修改会导致消费者2访问的数据发生变化。
- 会对添加的队列路由关系的进行是否成环校验，不允许成环。
- 不支持多线程并发调用。


#### 函数原型

aclError acltdtBindQueueRoutes(acltdtQueueRouteList *qRouteList)


#### 参数说明

| 参数名 | 输入/输出 | 说明 |
| --- | --- | --- |
| qRouteList | 输入/输出 | 路由关系数组的指针，接口调用完成后返回路由绑定结果。 需提前调用acltdtCreateQueueRouteList接口创建acltdtQueueRouteList类型的数据，再调用acltdtAddQueueRoute接口添加路由关系。 |


#### 返回值说明

返回0表示成功，返回其它值表示失败。

只有当所有队列关系绑定成功且路由状态正常时，本接口才会返回成功；任何一条绑定失败，本接口返回失败，如果您需要知道具体哪个路由关系绑定失败，您可以先调用acltdtGetQueueRoute接口从路由关系数组中获取每一个路由关系，再调用acltdtGetQueueRouteParam接口查询绑定关系状态。
