set_attr

产品支持情况

产品 是否支持
Atlas A3 训练系列产品/Atlas A3 推理系列产品
Atlas A2 训练系列产品/Atlas A2 推理系列产品

函数功能

设置FlowNode的属性。

函数原型

set_attr(attr_name, attr_value)

参数说明

参数名称 数据类型 取值说明
attr_name str 属性名称
当前支持如下三种:

- _flow_attr:BOOL类型属性,可以配置为true或false,true表示存在flow属性,false表示不存在flow属性。
-_flow_attr_depth:INT类型属性,指定了队列的深度,范围:大于等于2,若不配置,默认深度为128。
- _flow_attr_enqueue_policy:STRING类型属性,指定的入队的策略,仅支持"FIFO"和"OVERWRITE","FIFO"表示队列数据顺序入队,队列满的时候会等待dequeue,"OVERWRITE"表示入队不会等待,数据会循环覆盖,若不配置,默认策略为FIFO。
attr_value Union[bool, str, int] 属性值。

返回值

正常场景下返回None。

返回“TypeError”表示参数类型不正确。

调用示例

import dataflow as df
pp = df.FuncProcessPoint(...)
flow_node = df.FlowNode(...)
flow_node.set_attr("_flow_attr",True)
flow_node.set_attr("_flow_attr_depth",5)
flow_node.set_attr("_flow_attr_enqueue_policy","FIFO")

约束说明

通过_flow_attr_depth和_flow_attr_enqueue_policy设置depth和policy需要先使能_flow_attr,否则不会生效。