asc.language.fwk.TQue.vacant_in_que
- TQue.vacant_in_que() bool
查询队列是否已满。
对应的Ascend C函数原型
__aicore__ inline bool VacantInQue()
参数说明
无。
返回值说明
True:表示Queue未满,可以继续enque操作
False:表示Queue已满,不可以继续入队
约束说明
该接口不支持Tensor原地操作,即TQue的depth设置为0的场景。
调用示例
# 根据vacant_in_que判断当前que是否已满,设置当前队列深度为4 pipe = asc.Tpipe() que = asc.TQueBind(asc.TPosition.VECOUT, asc.TPosition.GM, 4) num = 10 len = 1024 pipe.init_buffer(que=que, num=num, len=len) tensor1 = que.alloc_tensor(asc.half) tensor2 = que.alloc_tensor(asc.half) tensor3 = que.alloc_tensor(asc.half) tensor4 = que.alloc_tensor(asc.half) tensor5 = que.alloc_tensor(asc.half) que.enque(tensor1) que.enque(tensor2) que.enque(tensor3) que.enque(tensor4) ret = que.vacant_in_que() # 返回False,继续入队操作将报错